New Jan-22-2020 v4 beta now available at
http://moi3d.com/beta.htm .
New stuff:
Added dimension property preset system for controlling initial properties of newly drawn dimensions.
Accessed under Options > Dimensions. The properties set for the "Default" preset are stored in moi.ini
and so if you want the same settings used in all projects you can set that one. You can additionally
create additional presets for project-specific settings. Any presets after "Default" are stored in .3dm
files. When you draw a dimension there is now a "Preset:" option which you can set to control which preset
will be used.
Implement sizing of the scene browser by dragging on its edge.
Update dimensions arrowheads - Add option to position arrowheads to the outside, for linear dimension and angular dimension.
Enable turning on edit points for annotations. This can be used to edit dimensions and also to reposition dimension text.
If the text point is selected on a linear or angular dimension you can also use Delete to clear the user positioned text and reset it to default positioned text.
Add circumference field. Add a circumference field in addition to radius/diameter for circle picking.
Affects ArcTangent, Circle, CircleTangent, Cone, Cylinder, and Sphere commands.
Add length field to ArcCenter command. The ArcCenter command now has a length field that shows the length of the arc as you move
your mouse around and you can enter a length value instead of an angle value.
Update DimAngle command, add angle input field. Add angle input field to DimAngle command so you can type in a desired angle if you are drawing a standalone dimension.
Add snap points on angular dimension objects
Update annotation font dialog - add font clear button. Add "Clear" button to font dialog, if pushed will clear out the font name and set it to use the default UI font.
Updated STEP/SAT/IGES imported object names. Support unicode object names and try to avoid excessively long object names by using just the last component name instead of including the full colon delimited hierarchical names. Can be reverted to use long names by a setting in moi.ini : [NURBS Import] UseHierarchicalNames=y
Fixed bug with dimension text getting distorted when coordinate values were larger than 2500.0
Fix OBJ sub-d conversion crash when reading materials that had texture maps set up.
Fixes a crash reported through e-mail by Phil Nolan.
Fix sweep bug. History update with editing control points for Sweep was making unexpected results.
Fixes bug reported in the forum by nameless here:
http://moi3d.com/forum/index.php?webtag=MOI&msg=9526.196
Update Circle tangent commands - Fixed bug in curve coplanar detection that could fail with certain mirrored control point arrangements. Fixes bug reported through e-mail by Vladimir.
Fix bug with circle Tan Tan Radius reported through e-mail by Vladimir.
Fix annotation window select bug - Leaders without any text were not working with window selection.
Fix Project command styles bug. The projected curve was inheriting the target object's style instead of its input curve style. Fixed to make the projected curve have the input curve's style instead. This can be reverted to the previous behavior by a setting in moi.ini [Styles] ProjectGetStyleFromTarget=y
Fixes a bug reported in the forum by Axel here:
http://moi3d.com/forum/index.php?webtag=MOI&msg=9615.1
Fix DXF import bug - Fix bug with importing a 2 vertex polyline with closed flag and bulge factor. Fixes import bug reported through e-mail by Vladimir.
Update edge hit testing - Fix dead zone around outside of object with selection filters active. Fixes bug reported on the forum by Pior here:
http://moi3d.com/forum/index.php?webtag=MOI&msg=8435.42
Update annotation font handling - support all font styles and weights. Make annotation fonts handle the full range of weights instead of just bold/not bold and also allow custom font styles so all font variations can be used instead of just bold and italic.
Fixed annotation font picking bug that would cause the font size to grow to larger values on Mac just by opening the font dialog.
Update detailed properties dialog styles. When multiple styles selected, list the styles.
Fix annotation objects bounding box bug which caused Transform > Align to behave strangely with annotation objects. Reported by OSTexo on the forum here:
http://moi3d.com/forum/index.php?webtag=MOI&msg=9526.11
Fix dim hit testing bug - Fix problem where dimensions would go on top of lines making the lines hard to select. Reported on the forum here:
http://moi3d.com/forum/index.php?webtag=MOI&msg=9526.85
Fix bug with Display: Wireframe mode on Meshing options dialog box not working. Reported on the forum by Schbeurd here:
http://moi3d.com/forum/index.php?webtag=MOI&msg=9526.148
Fix curve offset bug - Curve offset through point wasn't working correctly if closest point was at a tangent discontinuity.
Show error dialog if trying to load a Rhino v6 or higher .3dm file.
Fixed problems with dialog box ordering on some Mac OS versions, where sub dialogs could end up below their parent windows. Fixes bug reported by tech on the forum at:
http://moi3d.com/forum/index.php?webtag=MOI&msg=9526.76
Fixed bug where esc key could prevent hit testing from being reset on curve used for DimRadius. Reported through e-mail by Vladimir
Update mesh dialog - Don't restore window corner position saved in moi.ini if the corner is not on a visible screen.
Revert IGES import change - only use simple joins, not any vertex/edge splitting. Fixes regression reported on the forum by Will here:
http://moi3d.com/forum/index.php?webtag=MOI&msg=9526.220
Add moi.ini setting for showing grid in ortho views only, not the 3D view.
[Grid]
ShowGridInOrthoViewsOnly=y
Add option for scene browser show/unlock selection behavior. Add in options in moi.ini to select objects that are shown and/or unlocked using the scene browser when clicking on the eye or lock icon. Can be enabled in moi.ini under: [Scene Browser] SelectShownObjects=y SelectUnlockedObjects=y . Requested by Lestatdelc in the forum here:
http://moi3d.com/forum/index.php?webtag=MOI&msg=9526.72
Add moi.ini setting to disable selection edge flashing.
[Selection]
DisableSelectionEdgeFlash=n
If set to =y then the edge flash feedback when selecting faces or breps will be disabled. Requested by Pior in the forum here:
http://moi3d.com/forum/index.php?webtag=MOI&msg=8435.36
Add moi.ini options for disabling preselection highlighting. In moi.ini under:
[Selection]
DisablePreselectionHighlighting=n
DisablePreselectionHighlightingExceptCurves=n
If DisablePreselectionHighlighting=y then no highlighting on mouse moves will be done. If DisablePreselectionHighlightingExceptCurves=y then highlight will still be done on curves and edges but not other objects. Requested in the forum by Pior here:
http://moi3d.com/forum/index.php?webtag=MOI&msg=8435.28
Add moi.ini option to export FBX names as ascii [FBX Export] ConvertObjectNamesToAscii=y . Requested on the forum by Sven here:
http://moi3d.com/forum/index.php?webtag=MOI&msg=9526.115
scripting:
Update view.setCameraAndTarget() function. Take an optional 3rd parameter of an "up" direction vector.
Add script methods for dropping points:
curve.dropPoint( pt ) - returns curve parameter value of closest point on the curve to the given 3D point.
curvesegment.dropPoint( pt ) - returns curve parameter value of closest point on the curve segment to the given 3D point.
face.dropPoint( pt ); - returns 2D uv coordinate point of closest point on the face to the given 3D point.
brep.dropPoint( pt ); - finds closest point on brep to given 3D point. Returns a list with 3 items, 0: Face object that the closest point is on, 1: 2D uv coordinate for the face, 2: 3D coordinate of the closest point.
Updated face.planarFrame() method for analytic planes to use the same x/y axis alignment that point picking snap plane uses.
Add moi.filesystem.getDirs() method for getting a list of subdirectories within a given dir. Given a directory name and an optional filter string, return a list of sub-directories within that directory. For example: var dirs = moi.filesystem.getDirs( 'c:\\', 'p*' ); Filter can be a semi-colon delimited list of filters.
Add getEdgeIsoType script method
Takes a parameter of which face to consider, an edge can be shared between 2 faces.
var Iso = EdgeCrv.getEdgeIsoType( Face );
Return value:
-1 : Edge is not an isocurve of the given face.
0 : Edge is an isocurve of the given face, going in the U direction.
1 : Edge is an isocurve of the given face, going in the V direction.
- Michael