V4 beta Feb-9-2018 available now
 1-20  21-40  41-60  …  161-163

Next
 From:  Michael Gibson
8814.1 
A new v4 beta (version Feb-9-2018) is now available for download here: http://moi3d.com/beta.htm , also linked to from the download page on the main web site.

Text labels inside viewports still not implemented yet, that's the last remaining thing still left to get v4 fully caught up.


Bug fixes and changes:


Dashed/Dotted line styles implemented so things like the grid, construction lines, and hidden line display should be looking proper now.

Appdata commands folder - MoI will now look for commands in a "commands" subfolder under appdata in addition to the regular commands folder. On Windows this is located at C:\Users\<username>\AppData\Roaming\Moi\commands, on Mac it's /Users/<username>/Library/Application Support/Moi/commands . Note that on Mac the user Library folder is hidden by default, you can use the Cmd Shift . [period] shortcut while in a Finder window to show it for that Finder session. This will be the new recommended place to install plug-in commands, if you put them here then you won't have to copy them anywhere when new betas are released.

DXF import layers - Support reading layers in the DXF file as Styles in MoI.

DXF export layer names - Make layer names in DXF files encoded as AutoCAD is expecting for an AutoCAD 2000 DXF file. By default names will be written using Windows-1252 encoding, with unicode characters escaped. Fixes crashes in AutoCAD when opening a DXF file exported from MoI with layer names using non-ascii characters. It is possible to override this and use UTF-8 encoding for reading or writing names by settings in moi.ini: [DXF Import] ReadNamesAsUTF8=y and [DXF Export] WriteNamesAsUTF8=y

Alt/Cmd Shortcut keys Mac - Fix bug where Cmd+ keys were getting converted into Alt+ keys when written out in v4, and also that Alt+ keys were converted to Cmd+ keys in the moi.ini file by V3 if V3 was opened. Shortcut keys on the v4 Mac version are now written to a separate [Shortcut Keys Mac] section in moi.ini to avoid the conflict with V3.

Extrude responsiveness Mac - Rework communication with worker process to fix problem where some commands like Extrude were not as responsive as V3 especially on Mac.

Window resizing Mac - Fixes for flickering that was happening when turning browser pane on/off, switching between Split/3D/Top/Front/Right views and main window resizing.

Construction lines - Fix bug where when drawing a construction line, letting the mouse button up outside the viewport would finish the construction line, which prevents snaps from being changed. Changed to same behavior as V3. Fixes a bug reported by Vladimir on the forum here: http://moi3d.com/forum/index.php?webtag=MOI&msg=8731.59

Numeric input field display - if a value is typed into an input field the number of decimal places that were used is remembered for the session and will be used the next time the field is displayed. Fixes problems like typing in 0.001 for the Rebuild command tolerance but then having it show up as 0 the next time because of rounding to 2 decimal places.

Command macros - Make macro parameters sent in command line parameters also work for non-persistent controls like the ones in the Box command. Updated the UI for several commands to have input field ids of just "width" and "height" so now it's possible to make a shortcut of Box width=10 for example.

Straight snap - Fix bug where pressing or releasing Shift without any mouse movement didn't show the straight snap changing as it did in V3.

Alt+MMB view manipulation - Revert Alt+MMB to Pan to behave same as previous versions of MoI. Previously in V4 Alt+MMB had been set to do view rotation in the 3D view for compatibility with 3DS Max, but this change in default behavior has caused problems for some users accustomed to how V3 behaved. You can still enable Alt+MMB to do view rotation by a setting in moi.ini : [View] AltMMBRotate=y

Alt+RMB view manipulation - Add option for Alt+RMB to do Pan instead of Zoom, for ZBrush compatibility. This can be enabled in moi.ini under [View] AltRMBPan=y

Shortcuts editor - Fix bug where right-clicking in a text control in the Shortcuts editor to get the cut/copy/paste context menu didn't work right.

Windows shutdown bug - Fix bug when shutting down Windows while MoI is still open reported by Vladimir in the forum here:
http://moi3d.com/forum/index.php?webtag=MOI&msg=8731.81

Trim curve by point - Update tolerance used for trimming curves to points. Fixes Trim bug reported by bemfarmer on the forum here: http://moi3d.com/forum/index.php?webtag=MOI&msg=8786.18

Fix crash on program shutdown if license key dialog was canceled.

OBJ export - Fix invalid UV coordinates generated in .obj export when meshing a degenerate face. Fixes bug reported by 4rw1n in the forum here: http://moi3d.com/forum/index.php?webtag=MOI&msg=8754.20

 

Scripting:

Added additional script interface for Curve and CurveSegment objects.

For both Curves and CurveSegments:

crv.domainMin - Property that returns lower bound of the curve's parametric domain.

crv.domainMax - Property that returns upper bound of the curve's parametric domain.

crv.evaluatePoint( t ) - Function returning a point for the given parameter value.

crv.evaluateTangent( t, FromLeft = true ) - Function returning a unit tangent vector for the given parameter value. Optional second parameter controls calculating the tangent from the lower or higher parametric side at a discontinuity, default value = true.

crv.evaluateCurvature( t, FromLeft = true ) - Function returning the curvature vector for the given parameter value. Optional second parameter controls calculating the tangent from the lower or higher parametric side at a discontinuity, default value = true.

crv.evaluateDerivatives( t, NumDerivs, FromLeft = true ) - Function returning a list of derivative values for the given parameter value. Optional third parameter controls calculating the tangent from the lower or higher parametric side at a discontinuity, default value = true. The derivatives are returned in a list of length NumDerivs+1 with index 0 having the point value, index 1 having the first derivative, index 2 having the second derivative, etc...

crv.isPlanar - Property that returns true if the curve's control polygon is planar.

crv.planarFrame - Property that returns a coordinate frame with an origin point at the curve's control polygon centroid and a z axis along the plane normal, only valid if crv.isPlanar == true.

crv.isOnPlane( frame ) - Function that returns true if the curve is on the given frame's x/y plane.

crv.isOnParallelPlane( frame ) - Function that returns true if the curve is on a plane parallel to the given frame's x/y plane.

crv.isClosed - Property that returns true if the curve is closed.

crv.isPeriodic - Property that returns true if the curve has periodic ends (overlapping control points at start/end rather than a corner point at the start/end).

crv.isDegenerate - Property that returns true if the curve has a degenerate control polygon with all the points stacked in the same spot.

crv.isLine - Property that returns true if the curve has the shape of a line.

crv.isSimpleLine - Property that returns true if the curve is a simple line segment made up of only 2 control points.

crv.isCircle - Property that returns true if the curve is a circle.

crv.isArc - Property that returns true if the curve is a circular arc.

crv.isEllipse - Property that returns true if the curve is an ellipse (either a full ellipse or an elliptical arc).

crv.conicFrame - Property that returns the coordinate frame of a circle, arc, or ellipse. Only valid if isCircle, isArc, or isEllipse returns true.

crv.conicRadius - Property that returns the radius of a circle, arc or the x-axis radius of an ellipse. Only valid if isCircle, isArc, or isEllipse returns true.

crv.conicRadiusY - Property that returns the y-axis radius of an ellipse. Only valid if isEllipse returns true.

crv.conicEndAngleRadians - Property that returns the end angle in radians of a circular arc. The arc starts at the x-axis of the arc's frame. Only valid if isArc returns true.


The following only apply to Curves, not CurveSegments:

crv.isClickSelected - Property that returns true if the curve was selected by a mouse click action.

crv.clickSelectionPoint - Property that returns the point on the curve where it was click selected. Only valid if isClickSelected returns true.

crv.clickSelectionParam - Property that returns the parameter value of the curve where it was click selected. Only valid if isClickSelected returns true.

crv.isClickSelectedNearEnd - Property that returns true if the curve was selected by a mouse click action and it was clicked on a spot closer to it's ending side than its starting side.


Added moi.ui.systemDPI property.

Make text input controls fire an onchange event in addition to the previous onvaluechange event - onchange is the standard one used by regular input elements.

Add new script function moi.ui.findElement( 'id' ) - looks through all UIPanels for any element with the given id. Returns the element or null if not found.

Implement startup scripts. Now when MoI is started it will run all .js files it finds in a directory named "startup" inside of MoI's AppData. It will also look for any startup directory inside the main application install folder as well. The scripts will run right before the main window is displayed - note that if the script puts up a modal dialog the main window won't show until the script finishes. Scripts will be run in alphabetical order. MoI will create startup and commands directories inside appdata.

Add a container with id="CommandBarCustomUI" in CommandBar.htm to make it easier to populate the UI from a startup script.
Example:
var container = moi.ui.commandBar.CommandBarCustomUI;
container.insertAdjacentHTML( 'beforeEnd', '<moi:CommandButton>Test1</moi:CommandButton>' );

Appdata/scripts directory - you can add a scripts folder inside appdata and MoI will also check there for running an "instant script".


Add trackpadgesture event for Mac - Set up a custom trackpadgesture event so the node editor dialog can use Mac trackpad gestures for zooming and panning.
The trackpadgesture event object has these properties:

event.gestureType : string value of 'Scroll', 'SmartZoom', 'Zoom', or 'Rotate'.
event.deltaX, event.deltaY : movement for Scroll , 2 fingers swiping.
event.numTouches : number of touch points being used for Scroll.
event.scaleFactor : scale factor for pinch/zoom
event.angle : angle change for Rotate.

SmartZoom is a 2 finger double tap, used by MoI viewports for view reset. The trackpadgesture event also has all the same properties as a mouse event giving the location of the mouse cursor. By default the Scroll gesture generates a mouse wheel event, to prevent that use event.preventDefault();

EDITED: 10 Feb 2018 by MICHAEL GIBSON

  Reply Reply More Options
Post Options
Reply as PM Reply as PM
Print Print
Mark as unread Mark as unread
Relationship Relationship
IP Logged

Previous
Next
 From:  Max Smirnov (SMIRNOV)
8814.2 In reply to 8814.1 
Hi Michael,

Thank you for this great update! Crv.* functions opens new horizons :)
  Reply Reply More Options
Post Options
Reply as PM Reply as PM
Print Print
Mark as unread Mark as unread
Relationship Relationship
IP Logged

Previous
Next
 From:  r2d3
8814.3 In reply to 8814.2 
Hi Max,

just a easy? question..

using the new commands folder for external scripts the customUI dont find them..


I edited the ExtScripts.menu.htm:

#######
//else { dirList.push(moi.filesystem.getCommandsDir()); dirListShort.push(""); } <---original
else { dirList.push("/Users/ralfnaumann/Library/Application Support/Moi/commands"); dirListShort.push(""); }<--- edited
#######

and it works :-)

But there should be a moi command which gives me the path to the new commands folder - the "moi.filesystem.getCommandsDir()" gives only the path to internal commands folder..

Thanks


Ralf:)
looking for moments of inspiration...
  Reply Reply More Options
Post Options
Reply as PM Reply as PM
Print Print
Mark as unread Mark as unread
Relationship Relationship
IP Logged

Previous
Next
 From:  Frenchy Pilou (PILOU)
8814.4 
Cool seems there is no new text to translate
but that want to say that is not yet new functions for primary users!! :)
  Reply Reply More Options
Post Options
Reply as PM Reply as PM
Print Print
Mark as unread Mark as unread
Relationship Relationship
IP Logged

Previous
Next
 From:  r2d3
8814.5 In reply to 8814.1 
Thank you VERY MUCH Michael!!

Will test it on Mac - hard and without mercy ;-)


Ralf:)
looking for moments of inspiration...
  Reply Reply More Options
Post Options
Reply as PM Reply as PM
Print Print
Mark as unread Mark as unread
Relationship Relationship
IP Logged

Previous
Next
 From:  Max Smirnov (SMIRNOV)
8814.6 In reply to 8814.3 
Hi Ralf,

In fact my CustomUI project is obsolete since Michael implemented this startup engine.
I'll rewrite all CustomUI mods and release them as a startup mods bundle.
Also I'll add support for this new commands directory
  Reply Reply More Options
Post Options
Reply as PM Reply as PM
Print Print
Mark as unread Mark as unread
Relationship Relationship
IP Logged

Previous
Next
 From:  r2d3
8814.7 In reply to 8814.6 
Hi Max,

that makes sense...
Thanks a lot for your work!


Ralf:)
looking for moments of inspiration...
  Reply Reply More Options
Post Options
Reply as PM Reply as PM
Print Print
Mark as unread Mark as unread
Relationship Relationship
IP Logged

Previous
Next
 From:  Finema
8814.8 In reply to 8814.7 
Thanks Michael !
all is ok for me on Mac OS 10.13.3
the custom UI work fine also
only the text for view is too little
see my screenshot
thanks

EDITED: 9 May 2020 by FINEMA

  Reply Reply More Options
Post Options
Reply as PM Reply as PM
Print Print
Mark as unread Mark as unread
Relationship Relationship
IP Logged

Previous
Next
 From:  bemfarmer
8814.9 
Wow!
Lots of questions, but only three rhetorical ones now:

Karsten's CCC can be updated to show more curvatures/tangents?

Closed curve start points might be moveable?

Clothoids could access starting tangents of two existing curve ends?

- Brian
  Reply Reply More Options
Post Options
Reply as PM Reply as PM
Print Print
Mark as unread Mark as unread
Relationship Relationship
IP Logged

Previous
Next
 From:  Frenchy Pilou (PILOU)
8814.10 
---
Pilou
Is beautiful that please without concept!
My Moi French Site My Gallery
  Reply Reply More Options
Post Options
Reply as PM Reply as PM
Print Print
Mark as unread Mark as unread
Relationship Relationship
IP Logged

Previous
Next
 From:  mkdm
8814.11 In reply to 8814.1 
Hi Michael.

Thank you very much for this huge update!!!

Just installed and after a brief look it seems that all works fine :)

A big thank for the update of the API for "crv.isPlanar and the other methods" !!! Long awaited...


Also I've repeated the test of export in AI with super big canvas size and all works fine :)

I have used the same 3dm file : http://take.ms/0wS6q

But i just wanted to make a stress test and I have exported directly in 350 megapixel without follow your suggestion of increase the size 50 by 50 megapixel.

All worked as excepted.

Moi has consumed the same 12.3 Gb of Ram during the operation and has generated a huge png of 24694 x 14174 !!

Now this is perfect for me for what I want to do.

Have a nice day and thanks!

- Marco (mkdm)
  Reply Reply More Options
Post Options
Reply as PM Reply as PM
Print Print
Mark as unread Mark as unread
Relationship Relationship
IP Logged

Previous
Next
 From:  Michael Gibson
8814.12 
Thanks everyone!


@Finema:
> only the text for view is too little

Yes, text display inside of viewports is the last remaining area that needs work to catch everything up to V3. This is what I'll be focusing on next.



@bemfarmer:

> Karsten's CCC can be updated to show more curvatures/tangents?

Yes it should be possible for it to use the new evaluateCurvature(t) function. But it might need an additional method for getting curve parameter values for points equally spaced along the curve, I will see about adding that in.

> Closed curve start points might be moveable?

I think you may need a couple more things to make that work. I'm planning on adding another batch of curve functions for the next beta as well, that should do the trick.

> Clothoids could access starting tangents of two existing curve ends?

Yup, you can now use crv.evaluateTangent( crv.domainMin ); to get the start tangent and crv.evaluateTangent( crv.domainMax ); to get the end tangent.


Thanks, - Michael
  Reply Reply More Options
Post Options
Reply as PM Reply as PM
Print Print
Mark as unread Mark as unread
Relationship Relationship
IP Logged

Previous
Next
 From:  Michael Gibson
8814.13 In reply to 8814.3 
Hi Ralf, re:

> But there should be a moi command which gives me the path to the new commands
> folder - the "moi.filesystem.getCommandsDir()" gives only the path to internal commands
> folder..

The new commands directory is always at the same spot inside appdata, so you can get its location by using moi.filesystem.getAppDataDir() and appending 'commands\\' or 'commands/' onto that, a new function for that isn't really needed.

- Michael
  Reply Reply More Options
Post Options
Reply as PM Reply as PM
Print Print
Mark as unread Mark as unread
Relationship Relationship
IP Logged

Previous
Next
 From:  Lewis3D
8814.14 
Hi,

Great to see another beta with many things updated, Thank Michael.

Lewis
www.lewis.tomsoft.hr
www.ram-studio.hr
Skype - lewis3d

  Reply Reply More Options
Post Options
Reply as PM Reply as PM
Print Print
Mark as unread Mark as unread
Relationship Relationship
IP Logged

Previous
Next
 From:  James (JFH)
8814.15 In reply to 8814.13 
Hi Michael

Thanks for your great work!

> using moi.filesystem.getAppDataDir() and appending 'commands\\' or 'commands/' onto that

Can you clarify for me the appending of 'commands/'. I have made the following change to ExtScripts.menu.htm

LINE 55: else { dirList.push(moi.filesystem.getAppDataDir()); dirListShort.push(""); }

How do I call directory 'commands/'?

Sorry if this seems a stupid question
James
  Reply Reply More Options
Post Options
Reply as PM Reply as PM
Print Print
Mark as unread Mark as unread
Relationship Relationship
IP Logged

Previous
Next
 From:  Michael Gibson
8814.16 In reply to 8814.15 
Hi James, where you currently have:

moi.filesystem.getAppDataDir()

Instead put:

moi.filesystem.getAppDataDir()+'commands\\'

So your whole line will look like this:

LINE 55: else { dirList.push(moi.filesystem.getAppDataDir()+'commands\\'); dirListShort.push(""); }

- Michael
  Reply Reply More Options
Post Options
Reply as PM Reply as PM
Print Print
Mark as unread Mark as unread
Relationship Relationship
IP Logged

Previous
Next
 From:  James (JFH)
8814.17 In reply to 8814.16 
Thanks Michael,
That does the trick!
James
  Reply Reply More Options
Post Options
Reply as PM Reply as PM
Print Print
Mark as unread Mark as unread
Relationship Relationship
IP Logged

Previous
Next
 From:  mkdm
8814.18 In reply to 8814.1 
Hi Michael.

I wanted to make a stress test for this new V4 beta, a very heavy stress test.

I have used the latest BETA with "Mesh Angle" set to 5.0 and "add detail to inflection" because this is the settings I always use with Moi, in order to have the best rendered mesh.

My config is :

Windows 10 Pro 64 Bit
i7-7700K 4.5 Ghz
32 Gb DDR4 Ram 3000 Mhz
Nvidia Gtx 1080 Ti (11 Gb GDDR5X Ram and 3600 cuda cores)
Moi installed on Samsung EVO M.2 NVME SSD
3dm and step files loaded fropm a normal HD 2TB Barracuda.
(but I repeated the same tests having all files on M.2 SSD but with almost the same results)


I hope this benchmark will be useful for you for all you r next development of Moi :)

1) I downloaded this "motor" in step format from GrabCad : https://grabcad.com/library/engine-v-twin-4-valve-heads-1
and loaded into Moi V4 latest beta

Total loading time from scratch to 4 view displayed : 4 min and 10 secs (rather slow if I have to be honest)
Total memory occupied by Moi at the end of operation : 5.4 Gb




2) Saved in native 3dm file format
Total 3dm file size : 385 Mb
Total time : about 7 secs (good)
Total memory occupied by Moi at the end of operation : 5.4 Gb

3) Closed Moi then reopened and loaded the 3DM file :
Total loading time from scratch to 4 view displayed : about 1 minute
Total memory occupied by Moi at the end of operation : 5.4 Gb

4) Selected ALL objects and simply rotated 90 Deg using Right viewport :
Total time : not measured but extremely slow and Moi frozen for many seconds.
Peak of memory consumed during the operation : 10.5 Gb (!!!! Why ?)
Total memory occupied by Moi at the end of operation : 5.6 Gb

5) FIRST TEST OF EXPORT TO AI
Selected all objects, maximized the 3D viewport and exported in AI format to generate a super hires png at 90 megapixel
Final image size : 12522 x 7188
Total time needed : 7 min and 49 secs (very slow)
Peak of memory consumed during the operation : 10.6 Gb
Total memory occupied by Moi at the end of operation : 5.8 Gb

This is the image scaled down to 25% in order to "blur" the edges and in this way make a "manual" antialiasing.
VERY GOOD QUALITY



6) SECOND TEST OF EXPORT TO AI EXECUTED IMMEDIATELY AFTER THE FIRST TEST
Always with all objects selected and in maximized 3D viewport and exported in AI format to generate a super hires png at 350 megapixel
Final image size : 24694 x 14174
Total time needed : 11 min and 50 secs (very slow)
Peak of memory consumed during the operation : 19.4 Gb
Total memory occupied by Moi at the end of operation : 5.8 Gb

This is the image scaled down to 25% in order to "blur" the edges and in this way make a "manual" antialiasing.
VERY GOOD QUALITY



Marco (mkdm)
  Reply Reply More Options
Post Options
Reply as PM Reply as PM
Print Print
Mark as unread Mark as unread
Relationship Relationship
IP Logged

Previous
Next
 From:  Cemortan_Tudor
8814.19 
offset can be fixed :P
further plans of Moi evolution ?
fillet? shell, control pts, lasso ?
  Reply Reply More Options
Post Options
Reply as PM Reply as PM
Print Print
Mark as unread Mark as unread
Relationship Relationship
IP Logged

Previous
Next
 From:  pafurijaz
8814.20 
Hi and congratulations for the job, I found some files that I can't open them, this is link.
https://grabcad.com/library/mercedes-gt3-amg-by-gus-1

One question, which version of Rhino files can open moi3d v3?
  Reply Reply More Options
Post Options
Reply as PM Reply as PM
Print Print
Mark as unread Mark as unread
Relationship Relationship
IP Logged
 

Reply to All Reply to All

 

 
Show messages:  1-20  21-40  41-60  61-80  …  161-163