From MoiWiki
Revision as of 02:19, 2 September 2012 by Michael Gibson (talk | contribs)
Jump to navigationJump to search

Release notes for each V3 beta release are gathered here.


Forum announcement

New Flow command (Transform > Deform > Flow, no icon yet) for deforming objects from one "backbone" to another, some examples in these forum posts:   [1]   [2]

New selection indicator in the scene browser - shows a yellow dot on the right hand side to show if an item has selection or not, also now click on that spot to select or deselect things in the scene browser. Also you can use Ctrl+click on that same spot to set a selection filter which is also new. Some more descriptions here:   [3]   [4]

Major overhaul to many internals - the UI is now based off of WebKit/JavaScriptCore instead of mshtml.dll/JScript.dll , updated to new OpenNURBS v5 library for reading 3DM files - this enables reading of Rhino v5 files and should round trip stuff like extended layer properties to Rhino v4 better. Also updated to the newest release of the Solids++ geometry library which has some various bug fixes in it. There may be some regressions due to all this various library churn, let me know if something that worked in v2 doesn't seem to work in v3.


Forum announcement

New Twist command (Transform > Deform > Twist, no icon yet) for deforming objects by twisting them around an axis line. Some examples in this forum thread: [5]

New "Projective" option for Flow which can help for applying objects on to a localized area of a target object more like a decal rather than covering the entire surface like regular Flow. See here for a description: [6]

Updated Flow to pay attention to where you click on each surface to control how to match the results up - you click near the end of an edge on each surface and UVs will be flipped or swapped as needed to make those areas aligned, see this post for some more description: [7]

Added a "Flip surface normal" checkbox option to Flow so you can flip the result in the vertical surface normal direction if it is reversed from what you need.

Updated STL export for object names - if there is a single object being written to the STL file and it has a name, that name will be written as the object label in the file instead of just the generic "OBJECT".

New construction line snap plane feature - you can now make a "quick snap plane" by drawing 2 construction lines that share the same start point. Then when you snap on to that start point you can draw planar shapes like a circle from center point or rectangle from center and it will align perpendicular to those 2 crossing construction lines. It's also possible to use this to get a vertical straight snap line along that perpendicular as well. Some discussion in the forum here: [8] and some animated examples of its use here: [9]

Updated LWO export with an option for LightWave v10 style vertex normals - it seems that with LightWave v10 LW expects to see normals reversed in direction from LW 9.6 used. So now there are options for storing normals for Modo, LightWave 9.6 or LightWave 10, they each expect to see the normals in a slightly different coordinate system.

Updated scene browser text label display - clipped text so that a long text name won't overlap underneath the selection indicator area unless the selection indicator is going to be empty.

Fixed a bug in curve-to-curve Flow where it didn't work correctly unless both curves were in the world x/y plane.

Fixed a bug where the bounding box was not computed correctly for some kinds of curves imported from .ai files.

Fixed a bug where sliders did not work properly if the system locale used a comma as the decimal point separator.

Fixed a bug where an ignorable assert warning could pop up for some intersection object snap cases.

Fixed a regression bug in the geometry library that was causing some cases of "On surface" object snap to fail on some surfaces of revolution.

Fixed a regression bug in the geometry library that could cause extrusion to fail of planar surfaces that were actually made up of numerous control points instead of being simple planes.

Fixed a bug in accurate bounding box calculation on some kinds of surfaces that have an outwards flaring shape to them.

Fixed a problem where you couldn't use JPEG images in the UI, you could only use PNG. Now you can use any of PNG, JPEG, or GIF for images in any custom HTML UI.

Fixed a crash bug where running out of memory in one particular spot in mesh calculation would crash instead of giving the "Insufficient memory" warning message.

Fixed a bug where the previous window position was incorrectly still used with a different monitor arrangement when moving a laptop between docking stations, bug reported in the forum here: [10]

Fixed a bug with filtering on multi-style solids not working as expected reported in the forum here: [11]


Forum announcement

This release was just to extend the expiration date, no new major features in this build, just some minor bug fixes.


Forum announcement

Multiple cpu cores are now used in the draw engine - this should generally speed up the display of more complex models on multi-core machines. The exact amount varies depending on your machine and video card and the particular model features but speedups in the range of 2x to 3x seem to be the most common. There are some machines that are limited by some other bottleneck than CPU processing and on those there is no speedup at all. But it seems to deliver a good boost in most cases.

If you want to benchmark this new version with the old engine, you can set up a shortcut key with this script on it which will toggle a numeric readout of the display time in the upper-left corner of viewports: script: /* Toggle redraw time display */ moi.ui.showViewportDisplayTime = !moi.ui.showViewportDisplayTime;

The number of threads used can be limited by a new setting in moi.ini, the DisplayThreadLimit= setting inside the [View] section. If you set DisplayThreadLimit=1 there the multi-core use will be disabled.

PDF import has been totally overhauled, it should be a lot more robust and some kinds of PDFs that would previously get garbled should come through ok now. This should also improve .AI imports as well for AI files written in Illustrator v9 or higher versions since those newer style .AI files are actually PDF files. However, when saving these newer .AI files out from Illustrator you now need to set the "Create PDF Compatible File" option turned on in Illustrator, otherwise Illustrator ends up writing a file with a PDF outer structure but with all actual data in a private format.

New Extrude to point and Extrude tapered options for the Extrude command. These are 2 new buttons on the Extrude options panel:


Extrude to point connects the profile curve to a point that you pick, it's useful for making pyramid or cone-like objects:


Initially the point will track along the same vertical line through the shape's centroid that the regular extrude also tracks along. If you want to pick a point away from that line for the tip you can push the "Unlock direction" button which will then allow you to place the top point anywhere.

The "tapered" option allows you to produce an extrusion with a draft angle applied to make the side walls at a specific angled slope. You can also have interior outlines which will flare in the opposite direction:


The height of the tapered extrusion will generally be limited to be less than whatever amount would cause the different sloped profiles to collide into one another.

New functions for Isocurves - a new Isocurve curve construction command under Construct > Curve > Iso, and a new "Isocurve" option for the Trim command when trimming a single surface. An Isocurve is a curve on a surface that comes from the surface's own U or V directions. They can be convenient for certain operations since they follow the natural rectangular layout of a surface.

So for example say you have a fillet surface like this that you'd like to cut along one of its own arc cross-sections at the indicated spot:


The new Isocurve option for Trim can help make this operation more convenient - first use Edit > Separate to make sure the fillet is an individual surface not joined to anything else. Then when you run the Trim command there will be a new "Isocurve" button at the prompt for selecting cutting objects. If you push that button you can then pick a point on the surface and one of the natural U or V (or both) directions of the surface will be used as a cutting line. For a fillet surface one of those directions will be an exact arc curve like this:


You can place multiple isocurves to use as cutters, when you are done right-click or push "Done" and then the surface will be cut and you can pick which pieces to discard:



The Construct > Curve > Iso command will generate the Isocurve as a regular curve object so that you can use it for general construction like as a sweep path or whatever.

On several types of primitives isocurves will be key features of the object like for example on a sphere one isocurve direction will be a circle of latitude on the sphere and the other direction will be an arc of longitude on it.


Forum announcement

Updated Solids++ geometry library to latest version, includes various bug fixes but please also be on the lookout for any regressions (things that used to work previously but don't anymore after the update).

For Mac OSX this version should now work ok on OSX 10.8 Mountain Lion, please let me know if you still see any issues there.

Updated Network command - fixed a bug that was causing Network results to be extra lumpy in certain circumstances, the fix should give better quality surfaces. There is also a new "Mode" option that you can adjust to modify the fitting behavior.
    Mode = "Normal" fits the boundary curves by the regular fitting tolerance. This makes the resulting surface hug the shape of the boundary curves accurately enough so that it can be joined to other things built off of those same curves.
    Mode = "Lighter" makes the surface fit to a looser tolerance, making a lighter surface but that adheres less to the boundary curves.
    Mode = "Custom" - allows you to enter in a numeric tolerance value of your own choosing.
    Mode = "Uniform" - allows you to enter in a number of points - each section of the Network is fit with that number of control points per region rather than refining things adaptively to meet a distance tolerance like the other modes.
You can use one of the other modes than "Normal" if you want to output a less constrained and lighter surface at the expense of it not hugging as tightly to the boundary curves. So one thing to note if you use Network is that there is now an additional stage to the command where you can set the mode, and the command will not complete until you push "Done" or right click on that new additional step.

Updated curve fitting - the Rebuild command can now often generate a fit to the same accuracy as before but with fewer (often about half as many) control points used. The "Delete input objects" checkbox is now turned on by default for Rebuild.

Fixed a bug with Boolean Union when some open surfaces were used as part of the boolean, where in some circumstances it would not recognize and remove "interior cell walls" between 2 solid regions. This fixes the bug reported on the forum here: http://moi3d.com/forum/index.php?webtag=MOI&msg=4388.160

Updated Alt so holding Alt will also suppress the "Closed" snap when drawing a curve or polyline same as it suppresses other snaps. Reported on the forum here: http://moi3d.com/forum/index.php?webtag=MOI&msg=5338.1

Fixed file handling on Mac OSX so that any of the characters:     " * <> ? |     can be used ok in a file or directory name now - previously a file name with any of those characters would not work properly, which was a side effect of them being illegal filename characters in Windows.