Changes to the Program
Version 2021.1.0: released October 24, 2021
- Added an option that rotates a light with the scene
in OpenGL rather than having the light rotate with the camera.
- Added a feature that finds the RGB color, unaltered
by lighting, when the X,Y,Z coordinates are found for a location on
- Added a feature to apply decals on top of the OpenGL
Version 2021.0.0: released August 19, 2021
- For a DLL project, created a new 3D file format called
AT3D Mesh with the file extension .atm to more quickly read the large
polygon mesh files made from photos taken by a drone. To support the new
file format required a major revision to the AccuTrans 3D internal database
and thousands of code changes to access the revised database.
- At the request of Active Worlds, added the option to write
vertex normals to RWX files.
- At the request of Active Worlds, removed the 'double sided'
material property when writing RWX files.
- Added the reading and writing of LightWave LWO3 files. Nodes
are only partially supported and are still under development.
- Added a feature to divide the OpenGL view window from one
window pane to as many as nine window panes. A different camera view can be
displayed in each window pane. Ability to control the camera movements in
these additional panes is still under development.
- Revised algorithms to control the default and roaming
- Added the 'Display -> Reload modified textures' menu command
to reload any texture files that have been modified to the OpenGL viewer
- Added a feature to copy image (texture) files with optional
changes from one folder to another folder.
Version 2020.0.0: released May 19, 2020
- Major modification to the internal database in AccuTrans 3D
required changing many thousands of lines of code.
- Modified the 'Save View Window As Bitmap' feature so the image
in the view window can be saved from thumbnail size (smaller than the view window)
up to the maximum OpenGL texture size supported by the graphics card in the computer.
For an OpenGL image, the Line Width and Point Size of a vertex can be increased
from one pixel.
- Selected layers and their polygons, lines and points can be copied
from either the Clipboard or any other Work Area and then pasted into the currently
selected Work Area.
- Added a feature for creating, rotating and translating 'clones' of
3D objects. As this was for a DLL project, the clones can not be currently saved to
3D file formats that support clones.
- Modified the 'Extrude Pseudo 2D Surface' feature. Less triangles
are used for a flat bottom. The bottom of a normal extrusion can have the vertices
inverted. The bottom triangles can be left off the extrusion leaving only the top
and side triangles.
Version 2019.0.0: released February 8, 2019
- Fixed a problem that prevented *.3dmf files from being read.
- Modified the routine that converts a bitmap to a 3D mesh.
- Fixed a problem that prevented all the tools from being
displayed in the Tool Palette when switching to a different toolbar layout.
Version 2018.1.0: released August 5, 2018
- Replaced the deprecated OpenGL render mode GL_SELECT
with a new method that assigns different colors to each item being
picked in the OpenGL view window.
- Added a feature where the RGB colors in a LiDAR *.las
file are transferred to the vertices in a 3D mesh from a Wavefront
*.obj file where both files were created by the Cloud Compare software.
Version 2018.0.0: released April 24, 2018
- Added support that allows replicators to be used when
point clouds from LiDAR LAS files are written to MODO LXO files.
- Revised code to allow for faster reading of files for
the various 3D file formats.
- Revised code for reading the various 3D file formats
so that the entire file does not have to be read into memory before
parsing of the file contents starts.
- Fixed problem that prevented reading of files over 1
GB in size.
Version 2017.0.0: released May 8, 2017
- Added read support for terrains stored in CSV files from GeoGratis Canada.
- Fixed export of colors to MODO LXO files.
- Added a roaming camera type that works similar to a camera in a game.
- Added a tool for measuring long distances in a scene.
- Revised OpenGL viewer so that it handles high density meshes more
- Modified tools on the Tools_3 menu so that tools can work on meshes on selected layers.
- Added a function to remove orphan triangles from a mesh being prepared for 3D printing.
- Added a function to calculate the volume of 3D polygon meshes on selected layers. The meshes must be watertight and their surface normals must be aligned.
- Added a function to fill triangular shaped holes in 3D polygon meshes.
- Added a Clip function so that a DEM can be permanently reduced to the size of the selected region.
- Fixed a problem where a VRML file that started with a BOM (Byte Order Mark) would not be read.
- Added a function to change vertex colors on point clouds.
- Added support for writing vertex colors from a 3D polygon mesh to a XYZ-RGB file.
- Added an Undo function for scaling of heights of a DEM.
- Changed thousands of lines of code to eliminate warnings generated by the 64-bit compiler.
Version 2015.0.0: released May 3, 2015
- Modified writing of XYZ files so that a RGB color can be written after every
vertex in the point cloud. The RGB colors can be either floating point numbers
with a range from 0.0 to 1.0 or integers with a range from 0 to 255.
- Added support for reading XYZ-RGB files containing a point cloud with a RGB
color for each vertex. Note: A polygon mesh is not fitted to the point cloud.
- Added support for writing XAML files.
- Added support for reading LAS files which contain LiDAR point clouds. Note: A
polygon mesh is not fitted to the point clouds.
Version 2014.4.0: released November 3, 2014
- Added an option to the "Make LWO or LXL Clip Map
Object" module that allows the height of the mesh to be specified
as a certain number of meters per pixel. Note: the unit of measurement
in a LWO or LXL file is the meter.
- Fixed a problem that occurred when reading negative
indices from a Wavefront OBJ file.
- When reading DXF files, drawing entities marked as invisible in
Dynamic Blocks are no longer included in the final model.
Version 2014.3.0: released June 29, 2014
- Fixed problem where dialog boxes which were larger than
screen resolution did not adjust their size and add scroll bars.
Version 2014.2.0: released May 6, 2014
- Switched from using Unicode folder and file names back to using ANSI names.
- Fixed the 64-bit functions that check if a floating point number is a NaN
(Not-A-Number) or an Infinite.
- Fixed several causes for random floating point errors in the OpenGL viewer.
- Revised file Input/Output so that files larger than 2 GB can be opened for
reading and writing.
- Revised how UV coordinates are written to Maya MA files.
Version 2014.1.0: released February 4, 2014
- Changes made to the "Make LWO or LXL Clip Map Object" module.
- A problem was fixed where a "floating point" error occurred
when the "Edit Vertex" module was activated in the 64-bit version of
AccuTrans 3D that was running on a computer
using an AMD graphics card.
- Some GUI fixes including the "Tool Palette" not being positioned
properly during the startup sequence on some computers.
Version 2014.0.0: released January 2, 2014
- Added a new 32-bit program called At3d_Help.exe
that displays the Help Manual and Context-Sensitive Help Messages for
the 64-bit version of AccuTrans 3D.
The two programs talk to one another using Inter Process Communication.
- Added a feature to the 'Merge Vertices' module so that the minimum
distance between all vertices in the model can be found.
- Added a feature so that the selected and not selected state of layers
in the Layers List box can be reversed. Selected layers become deselected and
deselected layers become selected.
- Added a feature to the 'Triangle Copy', 'Triangle Delete', 'Triangle
Fracture' and 'Triangle Relocation' modules so that the original polygon selection
routine can be locked so that when selecting polygons already selected polygons can
not be accidentally deselected and vice versa when deselecting polygons.
- Added a feature to the 'watertight mesh check' that removes triangles
with no area from the mesh.
- Added a feature to the 'watertight mesh check' that counts the number
of individual meshes in the model and gives the user the option to copy each mesh to
its own layer on the Clipboard. The meshes on the Clipboard can then be copied to
any available Work Area.
- Added new tools to the 'Edit Vertices' module:
- The 'Add Triangle' tool creates new triangles for the selected layer.
- After using the 'Pick Edge' tool to pick an edge:
- Use the 'Edge Slide' tool to slide the first vertex selected along
a vector parallel to the edge.
- Use the 'Divide Slide' tool to divide the selected edge into 2 edges
and then slide the new vertex along a vector that is parallel to the original edge.
- Use the 'Divide Snap' tool to divide the selected edge into 2 edges
and then snap the new vertex to another vertex in the model.
- Added a 'Triangle Copy' module so that selected triangles can be copied from a layer to either an existing layer or a new layer without deleting the selected triangles after the copy operation.
- Modified the AccuTrans 3D
internal database to more efficiently use the RAM on the computer. Also modified
all the functions that access the internal database.
- Ported the AccuTrans 3D
code from 32-bit to 64-bit.
- Ported the AccuTrans 3D
code from Borland C++ Builder 3 to Embarcadero C++ Builder XE3.
Version 2012.1.0: June 17, 2012
- Added an option that renames all layer names with the
same name followed by a unique number ranging from 1 to N (where N
is the total number of layers).
- An image larger than the DEM landscape can be used as
the UV texture.
- Edit boxes were added so that boundaries of a small
section or region of a DEM landscape can be set accurately.
- Fixed a problem for material attributes where the integer
value was not always properly calculated when converting the floating
point value to the integer value.
- Added a root Component to the exported MDL file to fix
the 'root not found' error that STK displays when it reads a MDL file
that does not have a root Component.
Version 2012.0.0: March 7, 2012
- Incorrect handling of network file paths was fixed.
- The algorithm for creating extrusions based on the VRML
Extrusion node has been modified to prevent unwanted rotation of the
spine-aligned cross-section plane around the Y axis. An option was
also added to make miter joints at the spine points.
- Added an option to the TrueType Font extrusion module
so that the only vertices used for the converted text will be the original
B-spline control points for the glyphs.
- Added an option to the TrueType Font extrusion module
so that the height of the characters is based on the original vertex
coordinates defined for the glyphs.
- Added an option to the TrueType Font extrusion module so that the
height of the converted text string is based on the height of all characters
in the text string.