Joined: Mar 23, 2020
Post Count: 48
Status:
Offline
Camera Data Generator v1.1
Camera Data Generator is a Java-based auxiliary tool designed to create camera settings files for use in the SweetHome 3D software. This tool allows users to generate detailed camera configurations, including location (X, Y, Z), angles (Pitch, Yaw), Field of View (FOV), time zones, and more. The generated data can be exported as a CSV file and imported into SweetHome 3D to automate camera setups for rendering or visualization purposes.
This tool provides several modes of operation to cater to different camera configuration needs:
1. Cycle Time: Automates the generation of camera data over a range of days. 2. Cycle FOV: Iterates through a range of Field of View (FOV) values. 3. Cycle YAW: Iterates through a range of Yaw (horizontal angle) values. 4. Create Circular PATH: Generates camera positions along a circular path.
Below is a detailed description of the program's functionality, commands, and operational modes. User Guide and Command Help
Main Features
Input Fields: Start Day / End Day: Define the range of days for which camera data will be generated. Location (X, Y, Z): Set the camera's position in 3D space. Angles (Pitch, Yaw, FOV): Configure the camera's orientation and field of view. Date / Time: Specify the timestamp for the camera data. Time Zone: Select the time zone for accurate time stamping. Circular Path Parameters (Radius, Height): Define the radius and height of a circular camera path. Output: The generated camera data is saved as a CSV file on the user's desktop (Cameras-List.csv).
Operational Modes 1. Cycle Time
Description: Automates the generation of camera data over a specified range of days. How It Works: The user specifies a start day and an end day. The program generates camera data for each day within the range. If the interval spinner is enabled, the program divides each day into intervals (e.g., every 60 minutes). Use Case: Useful for creating time-lapse animations or rendering sequences over multiple days. Settings: Enable the "Cycle TIME (Start Day > End Day)" checkbox. Adjust the Start Day, End Day, and Interval spinners.
2. Cycle FOV
Description: Iterates through a range of Field of View (FOV) values, generating camera data for each step. How It Works: The program cycles the FOV from 0.25° to 180° and back to 0.25° in increments of 0.25°. Each FOV value corresponds to a unique camera configuration. Use Case: Ideal for testing how different FOV settings affect the rendered scene. Settings: Enable the "Cycle FOV angle (0.25° > 180° > 0.25°)" checkbox. Set the desired Pitch, Yaw, and other parameters.
3. Cycle YAW
Description: Iterates through a range of Yaw (horizontal angle) values, generating camera data for each step. How It Works: The program cycles the Yaw angle from 0° to 360° in increments of 0.25°. Each Yaw value corresponds to a unique camera orientation. Use Case: Useful for creating panoramic views or testing horizontal camera rotations. Settings: Enable the "Cycle YAW angle (0° > 360°)" checkbox. Set the desired Pitch, FOV, and other parameters.
4. Create Circular PATH
Description: Generates camera positions along a circular path. How It Works: The user specifies the radius and height of the circular path. The program calculates camera positions at evenly spaced points around the circle. Yaw angles are automatically adjusted to align with the circular path. Use Case: Perfect for creating smooth camera movements along a curved trajectory. Settings: Enable the "Create a Circular PATH" checkbox. Adjust the Radius and Height spinners. Set the center coordinates (X, Y) for the circular path.
General Workflow
Launch the Program: Open the application, and the main window will appear with input fields, checkboxes, and buttons.
Configure Settings: Fill in the required fields (e.g., X, Y, Z, Pitch, Yaw, FOV).
Select the desired operational mode (Cycle Time, Cycle FOV, Cycle YAW, or Create Circular PATH).
Generate Data: Click the OK button to validate inputs and generate the camera data.
A progress bar will indicate the status of the generation process.
Save Output: Once the process is complete, the program will save the data as a CSV file on the desktop.
A confirmation message will appear.
Import into SweetHome3D: Use the generated CSV file to import camera settings into SweetHome 3D for rendering or visualization.
Additional Notes
Time Zone Handling: The program includes a comprehensive list of time zones and their offsets. The selected time zone affects the timestamp in the generated data. Image Display: A world time zones map is displayed for reference when selecting time zones. Validation: The program validates user inputs to ensure consistency (e.g., Start Day cannot exceed End Day). Hardcoded Output Path: The program saves the generated CSV file to the user's Desktop
Conclusion
The SweetHome3D Camera Data Generator is a powerful tool for automating camera configurations in SweetHome3D. By leveraging its various operational modes, users can efficiently create complex camera setups for rendering, animation, or visualization projects. Whether you need to cycle through time, FOV, Yaw, or create circular paths, this tool provides the flexibility and precision required for professional-quality results.
+ Added Validation mechanisms for the sensitive Date / Time field
+ Note: Output files are merely .txt files but with .csv extension (no header needed)
+ Names of output files now are unique for each mode: Cameras-List-T.txt (TIME) Cameras-List-F.txt (FOV) Cameras-List-Y.txt (YAW) Cameras-List-P.txt (PATH)
+ For Time Cycle: Single Day operation ---> gets input from Date/Time Field More than one Day operation ---> gets input from Start Day & End Day spinners / calendars 1 = 1 January 2 = 2 January 3 = 3 January ... 366 = 31 December (for leap years)
Joined: Mar 23, 2020
Post Count: 48
Status:
Offline
Camera Data Generator v1.1L
Hello All :-) @Keet @Dorin @hansmex @Daniels118
+ New function to generate Aerial view (topview) in addition to (observer)
+ FOV : New function to choose intervals (min / step / max / step / min)
+ YAW : New function to choose intervals (min / step / max)
+ New Camera types : NORMAL (Depth of field) ; FISHEYE, SPHERICAL
+ Cameras-List-P.csv : Added header
... and the really TRICKY one:
+ New function to cycle time within 1 month interval or any number of days, also taking into consideration variable lengths of Months (28, 29, 30, 31), so output will be consistent:
Input 31 days ---> 1 Jan, 1 Feb, 1 Mar ... Input 16 days --->1 Jan, 17 Jan, 1 Feb, 17 Feb, 1 Mar, 17 Mar ...
+ On every startup, the program will randomly select a different destination and jumps to it !
Romania
Joined: Apr 24, 2014
Post Count: 676
Status:
Offline
Re: Camera Data Generator v1.1L
Hi, Fist congratulations for this application I've test it and it works. Few recommendations: 1. Clean the project. It appears you have a lot of classes from another project. 2. On csv file you have an unknown character.
2025-04-03T08:30�:00[Europe/Bucharest]
3. It appears this application results are used by another plugin. Probably it could be integrated in that plugin or, most probably, I'm wrong while I'm not very familiar with pictures, video or rendering.
Generally, You've made a good job! Continue!
---------------------------------------- A computer program does what you tell it to do, not what you want it to do. Murphy's Law When all else fails, read the instructions. Murphy's Law If you don't like "AS IS", DIY. Dorin's law
Romania
Joined: Apr 24, 2014
Post Count: 676
Status:
Offline
Re: Camera Data Generator v1.1n
You have forget to include LGoodDatePicker jar, so the calendar not work.
---------------------------------------- A computer program does what you tell it to do, not what you want it to do. Murphy's Law When all else fails, read the instructions. Murphy's Law If you don't like "AS IS", DIY. Dorin's law