http://moi3d.com/wiki/api.php?action=feedcontributions&user=Michael+Gibson&feedformat=atomMoiWiki - User contributions [en]2024-03-29T06:37:16ZUser contributionsMediaWiki 1.33.1http://moi3d.com/wiki/index.php?title=Resources&diff=1069Resources2024-03-27T23:07:14Z<p>Michael Gibson: /* Rhino6/7/8 3DM file format to Rhino5 3DM file format (MOI3D compatible) converter */</p>
<hr />
<div>__NOTOC__<br />
===Links to useful MoI information on the web &nbsp;&nbsp;&nbsp;([[File:fr_flag.png]] [[Resources_%28french%29|French]])===<br />
<br />
<br />
{| style=" width: 80%; border-spacing: 10px; border: 0px; text-align: left; margin-left: auto; margin-right: auto;vertical-align:top;"<br />
|+ <br />
| <b>MOI's site links</b> || <b>External links</b><br />
|- style="vertical-align:top;"<br />
| <br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://moi3d.com MoI home page]<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://moi3d.com/forum MoI discussion forum] <br />
<br />
[[File:Img_wiki_homepage.png|25px]] [[FAQ|Frequently Asked Questions]] <br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://moi3d.com/4.0/docs/moi_help.htm MoI help file online] <br />
([[File:fr_flag.png]][http://moi3d.com/4.0/docs/moi_help_French.htm French]) ([[File:de_flag.png]] [http://moi3d.com/2.0/docs/moi_help_German.htm German]) ([[File:es_flag.png]] [http://moi3d.com/2.0/docs/moi_help_Spanish.htm Spanish]) ([[File:it_flag.png]] [http://moi3d.com/1.0/docs/moi_help_Italian.htm Italian])<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [[Shortcut Keys]]<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [[Hidden Secrets]]<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [[Scripting]] <br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://moi3d.com/forum/index.php?webtag=MOI&msg=7841.6 Burr's script archive - collection of scripts posted on the forum]<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [[V4Beta|V4 Beta release notes]]<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [[Nodeeditor|Node editor plugin]]<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://moi3d.com/4.0/EULA_retail.rtf MoI End User License Agreement]<br />
<br />
| <br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://kyticka.webzdarma.cz/3d/moi/ Petr's MoI page], a variety of informations including scripts and custom commands. ([[File:fr_flag.png]][http://moiscript.weebly.com/ French version])<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [[MaxScriptArchive|Max Smirnov's MoI scripts]] ([[File:fr_flag.png]][http://moiscript.weebly.com/ French version])<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [[PiesMenuForMoi3D|Pies Menu by Pilou with AutoHotPie]] ([[File:fr_flag.png]][https://moiscript.weebly.com/autohotpie.html/ French version])<br />
<br />
|}<br />
<br />
{| style=" width: 80%; border-spacing: 10px; border: 0px; text-align: left; margin-left: auto; margin-right: auto;vertical-align:top;"<br />
|+ <br />
| <b>Language packs:</b><br />
|- style="vertical-align:top;"<br />
|[[File:fr_flag.png]] [http://moi3d.com/4.0/docs/moi_help_French.zip French v4 update]<br />
<br />
[[File:es_flag.png]] [http://moi3d.com/2.0/docs/v2_Spanish_update.zip Spanish v2 update]&nbsp;&nbsp;<br />
<br />
[[File:it_flag.png]] [http://moi3d.com/1.0/docs/Italian_language_pack.zip Italian UI and help file]&nbsp;&nbsp;<br />
|<br />
[[File:fr_flag.png]] [http://moi3d.com/2.0/docs/french_command_reference_update.zip French v2 update]&nbsp;&nbsp;<br />
<br />
[[File:de_flag.png]] [http://moi3d.com/2.0/docs/v2_German_update.zip German v2 update]&nbsp;&nbsp;<br />
|}<br />
<br />
== Tutorials ==<br />
{| style=" width: 80%; border-spacing: 10px; border: 0px; text-align: left; margin-left: auto; margin-right: auto;vertical-align:top;"<br />
|+ <br />
| <br />
|- style="vertical-align:top;"<br />
|<br />
[[File:Img_wiki_homepage.png|25px]] [http://moi3d.com/3.0/docs/tutorials.htm MoI documentation video tutorials]<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [https://gumroad.com/l/vavRq MoI Basics video tutorial ]by Bojan Koturanović - 7 hours $25 on Gumroad<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [https://www.youtube.com/playlist?list=PLu-75I3Zd8NS0AH3O75nOuerVz9O1rTUI Tutorials on YouTube ]by Liminal4D<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://moi3d.com/forum/index.php?webtag=MOI&msg=9816.1 48 German language video tutorials ] [[File:de_flag.png]] by Stefan Schneller on jewelry design<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://moi3d.com/download/Moi3d-Overview.pdf Introduction and overview PDF ]by Fabien Franzen<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://moi3d.com/forum/index.php?webtag=MOI&msg=7389.1 Sub-d car modeling in MoI ]by Ed Ferguson<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://moi3d.com/forum/index.php?webtag=MOI&msg=9899.1 Custom truck tutorial ]by Ed Ferguson<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://www.k4icy.com/tutorials.html Tutorials] by Mike Maynard, ( [[File:fr_flag.png]] [http://moiscript.weebly.com/ 18 of them in French ] by Pilou)<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://moi3d.com/forum/index.php?webtag=MOI&msg=284.1 Ring tutorial] by Jesse Kaufman, and [http://moi3d.com/forum/index.php?webtag=MOI&msg=510.5 #2], [http://moi3d.com/forum/index.php?webtag=MOI&msg=623.1 #3], <br />
[http://moi3d.com/forum/index.php?webtag=MOI&msg=556.1 #4],<br />
[http://moi3d.com/forum/index.php?webtag=MOI&msg=538.6 #5],<br />
[http://moi3d.com/forum/index.php?webtag=MOI&msg=536.1 #6]<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://moi3d.com/forum/index.php?webtag=MOI&msg=1175.3 Simple ring using rail revolve], <br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://moi3d.com/forum/index.php?webtag=MOI&msg=1175.5 Simple ring using sweep + scaling rail for more control]<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://moi3d.com/forum/index.php?webtag=MOI&msg=1057.1 Product design forums modeling challenges] <br />
<small>(not specific to MoI but useful for general CAD modeling strategy).</small><br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://moi3d.com/forum/index.php?webtag=MOI&msg=606.4 Simple Intarsia type design]<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://moi3d.com/forum/index.php?webtag=MOI&msg=1171.2 Creating a 3-toed base foot]<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://vimeo.com/30168354 Flow workflow video ]from danperk<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://3dcncguitars.com/ Tutorials for guitar modeling in MoI and Rhino and CNC production]<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://moi3d.com/forum/index.php?webtag=MOI&msg=8845.16 Car modeling techniques] by Zarkow, and [http://moi3d.com/forum/index.php?webtag=MOI&msg=8845.5 #2] and [http://moi3d.com/forum/index.php?webtag=MOI&msg=9956.1 video tutorials]<br />
<br />
<br />
<br />
|<br />
[[File:Img_wiki_homepage.png|25px]] [https://gumroad.com/l/fGqqS MoI for Game Assets video tutorial] by Arrimus 3D - 5 hours $9.99 on Gumroad<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://moiusers.blogspot.com/ Introductory videos ]by Tom Meeks - videos with narration covering a lot of basics.<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [https://www.youtube.com/playlist?list=PLUilfM8GEmrS3yRLygdFOGJjRZHOzLnkM A complete Youtube channel ]by Tom Meeks - 3D design for fun and life / Noun and Verb method.<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://moi3d.com/forum/index.php?webtag=MOI&msg=6058.1 Videos from Andrei Samardac]<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://moi3d.com/forum/index.php?webtag=MOI&msg=3842.1 Video on modeling a SpacePilot controller] from lyes <br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://vimeo.com/channels/moi3d Vimeo channel with tutorials] from lyes<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://bitreality.blogspot.com/ Joe's classical column video tutorials]<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://moi3d.com/forum/index.php?webtag=MOI&msg=402.9 Japanese bathtub tutorial]<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://moi3d.com/forum/index.php?webtag=MOI&msg=446.17 Object repair tutorial]<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://moi3d.com/forum/index.php?webtag=MOI&msg=2546.1 Ferrari 599 GTB tutorial videos ]by lyes<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://moi3d.com/forum/index.php?webtag=MOI&msg=2429.1 Snowman figure ]by PaQ<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://cid-30cffdfa97399495.skydrive.live.com/self.aspx/.Public/Accurate|_Tapers|_MoI|_V2.zip Accurate tapers using Expressions] by Danny <br />
<small>(Not really needed since Extrude now has a taper function good if you want to learn basic trig) D.T.</small><br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://moi3d.com/forum/index.php?webtag=MOI&msg=3814.1 Discussions on ship hull techniques]<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://moiscript.weebly.com/ Videos: Functions of the Manual] by Pilou ( [[File:fr_flag.png]] in French)<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://vimeo.com/30765016 Making accurate screw threads video] from OSTexo<br />
<br />
[[File:Img_wiki_homepage.png|25px]] Scooter tutorial from Mauro:&nbsp;&nbsp;&nbsp;&nbsp;[https://www.youtube.com/channel/UCq79CeWFi9yOjkXxYjF7n4A YouTube channel]&nbsp;&nbsp;&nbsp;&nbsp;[http://moi3d.com/forum/index.php?webtag=MOI&msg=9790.1 Forum post]<br />
<br />
|}<br />
<br />
== Helper programs ==<br />
Some standalone small programs to help accomplish specific tasks.<br />
<br />
=== Rhino6/7/8 3DM file format to Rhino5 3DM file format (MOI3D compatible) converter ===<br />
[https://moi3d.com/download/Convert3DMToRhinoV5_win.zip Download Convert3DMToRhinoV5 converter for Windows]<br />
<br />
[https://moi3d.com/download/Convert3DMToRhinoV5_mac.zip Download Convert3DMToRhinoV5 converter for Mac]<br><br />
For the Mac version, run this from a Terminal prompt:<br>sudo xattr -cr '/Applications/Convert3DMToRhinoV5'<br />
<br />
=== Obj23dmWireframe converter ===<br />
[https://moi3d.com/download/Obj23dmWireframe.zip Download Obj23dmWireframe converter for Windows]<br />
<br />
[https://moi3d.com/download/Obj23dmWireframe.app.zip Download Obj23dmWireframe converter for Mac]<br />
<br />
This enables bringing polygon data in an .obj file into MoI to use as a construction guide.<br />
Unzip it to some folder, and then you can run the Obj23dmWireframe.exe program. It will prompt you for the name of an .obj file to read, and after that the name of a .3dm file to create. It will read all the polygon data from the obj file and convert the edges of polygons into line segments, and then write those line segments to the 3dm file. You can then load that 3dm file into MoI and use those line segments to snap on to. Originally posted on the forum [http://moi3d.com/forum/index.php?webtag=MOI&msg=1099.1 here].<br />
<br />
=== MergeOBJ utility ===<br />
[http://moi3d.com/download/MergeOBJ.exe Download MergeOBJ utility]<br />
<br />
This utility program can combine several input OBJ files into one single OBJ file. This may be useful if you want to build up a set of different OBJ files possibly by exporting pieces with different mesh settings, and then combine them into one OBJ file if your target program wants to work with only a single file. This was created because the freely available mesh editing tools have a tendency to remove vertex normals when combining files together, this utility will preserve vertex normals. Announced on the forum [http://moi3d.com/forum/index.php?webtag=MOI&msg=3570.12 here].<br />
<br />
=== Old utilities ===<br />
[http://moi3d.com/download/3dmCurves2DXF.zip 3dmCurves2DXF converter] - This could convert curves in a 3DM file to a DXF file to be used for CAM programs. It's not needed anymore since MoI v3 now directly supports DXF file export.<br><br><br />
These utilities were to help with MoI v1 which did not export material assignments to OBJ files. Since MoI v2 can control material assignments by assigning Styles, these are no longer necessary but are still included here for v1 users.<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;[http://moi3d.com/download/SeparateOBJ.zip SeparateOBJ editor] - Breaks an OBJ file exported from MoI v1 into smaller pieces and puts separate material assignments on each piece for import into programs that require that.<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;[http://moi3d.com/download/MergeOBJ_old.zip MergeOBJ editor (old version)] - Edits an OBJ file to combine all the different objects in it into one single object so there will be just one material for the whole thing.</div>Michael Gibsonhttp://moi3d.com/wiki/index.php?title=Resources&diff=1068Resources2024-03-25T06:30:41Z<p>Michael Gibson: /* Rhino6/7 3DM file format to Rhino5 3DM file format (MOI3D compatible) converter */</p>
<hr />
<div>__NOTOC__<br />
===Links to useful MoI information on the web &nbsp;&nbsp;&nbsp;([[File:fr_flag.png]] [[Resources_%28french%29|French]])===<br />
<br />
<br />
{| style=" width: 80%; border-spacing: 10px; border: 0px; text-align: left; margin-left: auto; margin-right: auto;vertical-align:top;"<br />
|+ <br />
| <b>MOI's site links</b> || <b>External links</b><br />
|- style="vertical-align:top;"<br />
| <br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://moi3d.com MoI home page]<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://moi3d.com/forum MoI discussion forum] <br />
<br />
[[File:Img_wiki_homepage.png|25px]] [[FAQ|Frequently Asked Questions]] <br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://moi3d.com/4.0/docs/moi_help.htm MoI help file online] <br />
([[File:fr_flag.png]][http://moi3d.com/4.0/docs/moi_help_French.htm French]) ([[File:de_flag.png]] [http://moi3d.com/2.0/docs/moi_help_German.htm German]) ([[File:es_flag.png]] [http://moi3d.com/2.0/docs/moi_help_Spanish.htm Spanish]) ([[File:it_flag.png]] [http://moi3d.com/1.0/docs/moi_help_Italian.htm Italian])<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [[Shortcut Keys]]<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [[Hidden Secrets]]<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [[Scripting]] <br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://moi3d.com/forum/index.php?webtag=MOI&msg=7841.6 Burr's script archive - collection of scripts posted on the forum]<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [[V4Beta|V4 Beta release notes]]<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [[Nodeeditor|Node editor plugin]]<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://moi3d.com/4.0/EULA_retail.rtf MoI End User License Agreement]<br />
<br />
| <br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://kyticka.webzdarma.cz/3d/moi/ Petr's MoI page], a variety of informations including scripts and custom commands. ([[File:fr_flag.png]][http://moiscript.weebly.com/ French version])<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [[MaxScriptArchive|Max Smirnov's MoI scripts]] ([[File:fr_flag.png]][http://moiscript.weebly.com/ French version])<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [[PiesMenuForMoi3D|Pies Menu by Pilou with AutoHotPie]] ([[File:fr_flag.png]][https://moiscript.weebly.com/autohotpie.html/ French version])<br />
<br />
|}<br />
<br />
{| style=" width: 80%; border-spacing: 10px; border: 0px; text-align: left; margin-left: auto; margin-right: auto;vertical-align:top;"<br />
|+ <br />
| <b>Language packs:</b><br />
|- style="vertical-align:top;"<br />
|[[File:fr_flag.png]] [http://moi3d.com/4.0/docs/moi_help_French.zip French v4 update]<br />
<br />
[[File:es_flag.png]] [http://moi3d.com/2.0/docs/v2_Spanish_update.zip Spanish v2 update]&nbsp;&nbsp;<br />
<br />
[[File:it_flag.png]] [http://moi3d.com/1.0/docs/Italian_language_pack.zip Italian UI and help file]&nbsp;&nbsp;<br />
|<br />
[[File:fr_flag.png]] [http://moi3d.com/2.0/docs/french_command_reference_update.zip French v2 update]&nbsp;&nbsp;<br />
<br />
[[File:de_flag.png]] [http://moi3d.com/2.0/docs/v2_German_update.zip German v2 update]&nbsp;&nbsp;<br />
|}<br />
<br />
== Tutorials ==<br />
{| style=" width: 80%; border-spacing: 10px; border: 0px; text-align: left; margin-left: auto; margin-right: auto;vertical-align:top;"<br />
|+ <br />
| <br />
|- style="vertical-align:top;"<br />
|<br />
[[File:Img_wiki_homepage.png|25px]] [http://moi3d.com/3.0/docs/tutorials.htm MoI documentation video tutorials]<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [https://gumroad.com/l/vavRq MoI Basics video tutorial ]by Bojan Koturanović - 7 hours $25 on Gumroad<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [https://www.youtube.com/playlist?list=PLu-75I3Zd8NS0AH3O75nOuerVz9O1rTUI Tutorials on YouTube ]by Liminal4D<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://moi3d.com/forum/index.php?webtag=MOI&msg=9816.1 48 German language video tutorials ] [[File:de_flag.png]] by Stefan Schneller on jewelry design<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://moi3d.com/download/Moi3d-Overview.pdf Introduction and overview PDF ]by Fabien Franzen<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://moi3d.com/forum/index.php?webtag=MOI&msg=7389.1 Sub-d car modeling in MoI ]by Ed Ferguson<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://moi3d.com/forum/index.php?webtag=MOI&msg=9899.1 Custom truck tutorial ]by Ed Ferguson<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://www.k4icy.com/tutorials.html Tutorials] by Mike Maynard, ( [[File:fr_flag.png]] [http://moiscript.weebly.com/ 18 of them in French ] by Pilou)<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://moi3d.com/forum/index.php?webtag=MOI&msg=284.1 Ring tutorial] by Jesse Kaufman, and [http://moi3d.com/forum/index.php?webtag=MOI&msg=510.5 #2], [http://moi3d.com/forum/index.php?webtag=MOI&msg=623.1 #3], <br />
[http://moi3d.com/forum/index.php?webtag=MOI&msg=556.1 #4],<br />
[http://moi3d.com/forum/index.php?webtag=MOI&msg=538.6 #5],<br />
[http://moi3d.com/forum/index.php?webtag=MOI&msg=536.1 #6]<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://moi3d.com/forum/index.php?webtag=MOI&msg=1175.3 Simple ring using rail revolve], <br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://moi3d.com/forum/index.php?webtag=MOI&msg=1175.5 Simple ring using sweep + scaling rail for more control]<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://moi3d.com/forum/index.php?webtag=MOI&msg=1057.1 Product design forums modeling challenges] <br />
<small>(not specific to MoI but useful for general CAD modeling strategy).</small><br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://moi3d.com/forum/index.php?webtag=MOI&msg=606.4 Simple Intarsia type design]<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://moi3d.com/forum/index.php?webtag=MOI&msg=1171.2 Creating a 3-toed base foot]<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://vimeo.com/30168354 Flow workflow video ]from danperk<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://3dcncguitars.com/ Tutorials for guitar modeling in MoI and Rhino and CNC production]<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://moi3d.com/forum/index.php?webtag=MOI&msg=8845.16 Car modeling techniques] by Zarkow, and [http://moi3d.com/forum/index.php?webtag=MOI&msg=8845.5 #2] and [http://moi3d.com/forum/index.php?webtag=MOI&msg=9956.1 video tutorials]<br />
<br />
<br />
<br />
|<br />
[[File:Img_wiki_homepage.png|25px]] [https://gumroad.com/l/fGqqS MoI for Game Assets video tutorial] by Arrimus 3D - 5 hours $9.99 on Gumroad<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://moiusers.blogspot.com/ Introductory videos ]by Tom Meeks - videos with narration covering a lot of basics.<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [https://www.youtube.com/playlist?list=PLUilfM8GEmrS3yRLygdFOGJjRZHOzLnkM A complete Youtube channel ]by Tom Meeks - 3D design for fun and life / Noun and Verb method.<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://moi3d.com/forum/index.php?webtag=MOI&msg=6058.1 Videos from Andrei Samardac]<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://moi3d.com/forum/index.php?webtag=MOI&msg=3842.1 Video on modeling a SpacePilot controller] from lyes <br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://vimeo.com/channels/moi3d Vimeo channel with tutorials] from lyes<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://bitreality.blogspot.com/ Joe's classical column video tutorials]<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://moi3d.com/forum/index.php?webtag=MOI&msg=402.9 Japanese bathtub tutorial]<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://moi3d.com/forum/index.php?webtag=MOI&msg=446.17 Object repair tutorial]<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://moi3d.com/forum/index.php?webtag=MOI&msg=2546.1 Ferrari 599 GTB tutorial videos ]by lyes<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://moi3d.com/forum/index.php?webtag=MOI&msg=2429.1 Snowman figure ]by PaQ<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://cid-30cffdfa97399495.skydrive.live.com/self.aspx/.Public/Accurate|_Tapers|_MoI|_V2.zip Accurate tapers using Expressions] by Danny <br />
<small>(Not really needed since Extrude now has a taper function good if you want to learn basic trig) D.T.</small><br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://moi3d.com/forum/index.php?webtag=MOI&msg=3814.1 Discussions on ship hull techniques]<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://moiscript.weebly.com/ Videos: Functions of the Manual] by Pilou ( [[File:fr_flag.png]] in French)<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://vimeo.com/30765016 Making accurate screw threads video] from OSTexo<br />
<br />
[[File:Img_wiki_homepage.png|25px]] Scooter tutorial from Mauro:&nbsp;&nbsp;&nbsp;&nbsp;[https://www.youtube.com/channel/UCq79CeWFi9yOjkXxYjF7n4A YouTube channel]&nbsp;&nbsp;&nbsp;&nbsp;[http://moi3d.com/forum/index.php?webtag=MOI&msg=9790.1 Forum post]<br />
<br />
|}<br />
<br />
== Helper programs ==<br />
Some standalone small programs to help accomplish specific tasks.<br />
<br />
=== Rhino6/7/8 3DM file format to Rhino5 3DM file format (MOI3D compatible) converter ===<br />
[https://moi3d.com/download/Convert3DMToRhinoV5_win.zip Download Convert3DMToRhinoV5 converter for Windows]<br />
<br />
[https://moi3d.com/download/Convert3DMToRhinoV5_mac.zip Download Convert3DMToRhinoV5 converter for Mac]<br />
<br />
=== Obj23dmWireframe converter ===<br />
[https://moi3d.com/download/Obj23dmWireframe.zip Download Obj23dmWireframe converter for Windows]<br />
<br />
[https://moi3d.com/download/Obj23dmWireframe.app.zip Download Obj23dmWireframe converter for Mac]<br />
<br />
This enables bringing polygon data in an .obj file into MoI to use as a construction guide.<br />
Unzip it to some folder, and then you can run the Obj23dmWireframe.exe program. It will prompt you for the name of an .obj file to read, and after that the name of a .3dm file to create. It will read all the polygon data from the obj file and convert the edges of polygons into line segments, and then write those line segments to the 3dm file. You can then load that 3dm file into MoI and use those line segments to snap on to. Originally posted on the forum [http://moi3d.com/forum/index.php?webtag=MOI&msg=1099.1 here].<br />
<br />
=== MergeOBJ utility ===<br />
[http://moi3d.com/download/MergeOBJ.exe Download MergeOBJ utility]<br />
<br />
This utility program can combine several input OBJ files into one single OBJ file. This may be useful if you want to build up a set of different OBJ files possibly by exporting pieces with different mesh settings, and then combine them into one OBJ file if your target program wants to work with only a single file. This was created because the freely available mesh editing tools have a tendency to remove vertex normals when combining files together, this utility will preserve vertex normals. Announced on the forum [http://moi3d.com/forum/index.php?webtag=MOI&msg=3570.12 here].<br />
<br />
=== Old utilities ===<br />
[http://moi3d.com/download/3dmCurves2DXF.zip 3dmCurves2DXF converter] - This could convert curves in a 3DM file to a DXF file to be used for CAM programs. It's not needed anymore since MoI v3 now directly supports DXF file export.<br><br><br />
These utilities were to help with MoI v1 which did not export material assignments to OBJ files. Since MoI v2 can control material assignments by assigning Styles, these are no longer necessary but are still included here for v1 users.<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;[http://moi3d.com/download/SeparateOBJ.zip SeparateOBJ editor] - Breaks an OBJ file exported from MoI v1 into smaller pieces and puts separate material assignments on each piece for import into programs that require that.<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;[http://moi3d.com/download/MergeOBJ_old.zip MergeOBJ editor (old version)] - Edits an OBJ file to combine all the different objects in it into one single object so there will be just one material for the whole thing.</div>Michael Gibsonhttp://moi3d.com/wiki/index.php?title=MaxScriptArchive&diff=1067MaxScriptArchive2024-02-02T06:25:01Z<p>Michael Gibson: </p>
<hr />
<div><big>Mirror of Max Smirnov's MoI scripts, distributed under MIT license</big><br />
<br />
CustomUI:<br />
<div>[https://moi3d.com/download/scripts/max/CustomUI.2.0.beta2.zip CustomUI.2.0.beta2.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/CustomUI.1.03.win.mac.zip CustomUI.1.03.win.mac.zip]</div><br />
<br><br />
Scripts:<br />
<div>[https://moi3d.com/download/scripts/max/Voronoi.v.1.11.2018.03.09.zip Voronoi.v.1.11.2018.03.09.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/RasterImage.v.0.5.2018.02.25(MoI.v4).zip RasterImage.v.0.5.2018.02.25(MoI.v4).zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/Heightmap.v.0.8.2018.02.24(MoI.v4).zip Heightmap.v.0.8.2018.02.24(MoI.v4).zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/Dimensions.v.1.1.2018.02.24.zip Dimensions.v.1.1.2018.02.24.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/NutsAndBolts.v.0.96.2015.06.22.zip NutsAndBolts.v.0.96.2015.06.22.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/cMorph.v.1.2.2024.02.01.zip cMorph.v.1.2.2024.02.01.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/Cloth.v.0.97.2017.11.23.zip Cloth.v.0.97.2017.11.23.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/FxGraph3D.v.1.1.2016.04.17.zip FxGraph3D.v.1.1.2016.04.17.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/FatLines.v.0.6.2017.11.17.zip FatLines.v.0.6.2017.11.17.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/sSplit.v.0.95.2015.08.10.zip sSplit.v.0.95.2015.08.10.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/sBridge.v.0.71.2015.03.26.zip sBridge.v.0.71.2015.03.26.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/Gear.v.1.0.2014.09.26.zip Gear.v.1.0.2014.09.26.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/Wire.v.1.0.2017.02.16.zip Wire.v.1.0.2017.02.16.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/FxGraph.v.1.2e.2016.04.17.zip FxGraph.v.1.2e.2016.04.17.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/RadialPattern.v.1.3.2015.12.13.zip RadialPattern.v.1.3.2015.12.13.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/Subdiv_beta9.zip Subdiv_beta9.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/CVolume.v.3.0.2022.05.24.zip CVolume.v.3.0.2022.05.24.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/ImportObj.v.1.5.2015.09.10.zip ImportObj.v.1.5.2015.09.10.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/DelCorners.v.1.0.2015.09.09.zip DelCorners.v.1.0.2015.09.09.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/Array3D.v.0.7.2015.09.04.zip Array3D.v.0.7.2015.09.04.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/PointsOnCurve.1.2b.2013.11.15.zip PointsOnCurve.1.2b.2013.11.15.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/sScale.v.0.6.2015.03.28.zip sScale.v.0.6.2015.03.28.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/SubdivBeta.v.6.1.2015.03.05.zip SubdivBeta.v.6.1.2015.03.05.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/vSpray.v.1.1.2014.01.27.zip vSpray.v.1.1.2014.01.27.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/vSeed.v.1.2.2014.02.05.zip vSeed.v.1.2.2014.02.05.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/vOrientFast.v.1.0.2014.01.28.zip vOrientFast.v.1.0.2014.01.28.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/vOrient.v.1.0.2014.01.28.zip vOrient.v.1.0.2014.01.28.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/vDrop.v.1.0.2014.01.28.zip vDrop.v.1.0.2014.01.28.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/vClone.v.1.0.2014.01.26.zip vClone.v.1.0.2014.01.26.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/SaveInstances.v.1.0.2014.11.05.zip SaveInstances.v.1.0.2014.11.05.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/Starmap.v.0.45.2015.08.23.zip Starmap.v.0.45.2015.08.23.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/MultiIsoPlus.v.1.0.2015.01.18.zip MultiIsoPlus.v.1.0.2015.01.18.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/Heightmap.v.0.6.2015.08.20.zip Heightmap.v.0.6.2015.08.20.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/Cycles.v.1.0.1.2015.03.15.zip Cycles.v.1.0.1.2015.03.15.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/cyclicPoly.v.0.5.2015.05.23.zip cyclicPoly.v.0.5.2015.05.23.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/Subdiv_beta6.1.zip Subdiv_beta6.1.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/SubdivClassic.v.0.6.2015.02.22.zip SubdivClassic.v.0.6.2015.02.22.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/deCasteljau.v.1.0.2015.01.21.zip deCasteljau.v.1.0.2015.01.21.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/RandomCurves.v.1.0.2014.01.25.zip RandomCurves.v.1.0.2014.01.25.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/PatternSelection.v.0.3.2014.02.20.zip PatternSelection.v.0.3.2014.02.20.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/DistortCurves.v.1.0.2014.11.04.zip DistortCurves.v.1.0.2014.11.04.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/SpherePointsPlus.v.1.1.2014.10.23.zip SpherePointsPlus.v.1.1.2014.10.23.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/RandomStyles.v.0.9.2014.01.17.zip RandomStyles.v.0.9.2014.01.17.zip]</div><br />
<br />
<br><br />
<div>[https://web.archive.org/web/20201105115049/http://moi.maxsm.net/ Max's site snapshot on Internet Archive]</div></div>Michael Gibsonhttp://moi3d.com/wiki/index.php?title=V5Beta&diff=1065V5Beta2023-05-02T20:24:33Z<p>Michael Gibson: /* Mar-28-2023 */</p>
<hr />
<div><big>Release notes for each V5 beta release are gathered here.</big><br />
<br />
== Apr-10-2022 ==<br />
<br />
[http://moi3d.com/forum/index.php?webtag=MOI&msg=10652.1 Forum announcement]<br />
<br />
<div style="width: 700px">New stuff:<br />
<br />
Dark UI theme and theme editor available under Options &gt; General &gt; "UI Theme".<br />
<br />
Groups - create a group using the menu on the "Objects" section of the Scene Browser.<br />
<br />
Types section of the Scene Browser has additional sub types like "Types &gt; Curves &gt; Circles" can be used to target just curves that are circles.<br />
Sub types include:<br/><br />
&nbsp;&nbsp;&nbsp;&nbsp;Curves &gt; Open, Closed, Planar, Lines, Polylines, Circles, Arcs, Ellipses, Elliptical arcs<br/><br />
&nbsp;&nbsp;&nbsp;&nbsp;Surfaces &gt; Planar<br/><br />
&nbsp;&nbsp;&nbsp;&nbsp;Edges &gt; Joined, Naked<br/><br />
&nbsp;&nbsp;&nbsp;&nbsp;Properties &gt; Selected, Unselected, Locked, Unlocked, Visible, New objects.<br/><br />
<br />
Support for import/export to SVG format.<br />
<br />
SubD conversion now supports FBX format.<br />
<br />
The Mac version is now a universal binary that contains code for both Intel and M1 CPU architectures.<br />
<br />
Added File &gt; Notes button for setting text notes that are saved inside of a .3dm file.<br />
<br />
Scene browser - click on text label of an item in the Objects section of the scene browser to assign current selection to a name or group.<br />
<br />
Annotation text display engine performance - Hoist several Qt text layout calls up to layout time rather than calling at render time. Major improvement to render performance for text. Also if model units sized text is small on screen render as a textured quad instead of using text geometry.<br />
<br />
Scene browser - Add "Unnamed" entry under Objects to allow targeting of all objects without a name.<br />
<br />
Update STEP export - split closed surfaces Default is on, can be set in moi.ini under:<br/><br />
[STEP]<br/><br />
ExportSplitClosedSurfaces=n<br />
<br />
Update tab controls - Add dot to active tab.<br />
<br />
New rendering platforms - support for Direct3D9 on Windows and Metal on Mac. Can be set in moi.ini under [View] GraphicsAPI=Direct3D9 or GraphicsAPI=Metal . If you are having problems with a particular video driver you can try using one of these alternatives.<br />
<br />
Added experimental ViewProject command that transforms objects by a perspective projection.<br />
<br />
Support clipboard copy/paste of SVG format. To copy to the clipboard using SVG format, set up a shortcut key with this:<br/><br />
script: moi.geometryDatabase.copyToClipboardSVG();<br />
<br />
Update default render engine on Wine - Default to Direct3D11 on Wine instead of OpenGL. Wine seems to compensate for various driver bugs in its Direct3D layer.<br />
<br />
Update text rendering under Wine. Wine seems to have a bug in ID3D11DeviceContext::UpdateSubresource when it's being applied to an 8-bit luminance texture. When running under Wine use a 32-bit texture format for the text texture to avoid running into this.<br />
<br />
Fix Mac version bug where doing a double right click could get stuck in a loop if there was a file dialog being shown after the double right click happened.<br />
<br />
Fix crash bug in Extrude when extruding a curve with a large number of segments and with particular weight values. Fixes a bug reported by Scott Carson in e-mail.<br />
<br />
Fix boolean bug where edges that touched at singularity were being incorrectly merged in boolean union. Fixes a bug reported through e-mail by Christopher Schardt.<br />
<br />
Fix boolean problem with multi object booleans where tolerance settings were being handled slightly differently when many objects were being booleaned. This could sometimes yield different results when booleaning many objects at once instead of only 2 at a time. Fixes a boolean union bug reported through e-mail by Christopher Schardt.<br />
<br />
Update Mac trackpad/Magic Mouse handling. Give up trying to automatically figure out if a scroll message is coming from Magic Mouse or trackpad it does not appear to be possible to do this reliably. So make Magic Mouse scroll behave same as trackpad scroll, the moi.ini option for doing trackpad scroll as a wheel mouse ([MultiTouch] UseTrackpadScrollAsMouseWheel=y) can be used to get old behavior on Magic Mouse.<br />
Also holding down Alt while doing a trackpad scroll will instead do a wheel zoom now.<br />
There is also a new parameter to reverse scroll/pan: [MultiTouch] ReverseTrackpadScroll=y<br />
<br />
Updated Sweep 2 rails maintain height mode. If the the 2 rails start or end in a point don't disable "Maintain height" for the entire sweep, instead handle the scaling down to a point after the first or last proflie.<br />
<br />
Update background images - Add in moi.ini option to make background image embed turned on by default.<br/><br />
[View]<br/><br />
BackgroundImageEmbedDefault=y<br />
<br />
Update surface/surface intersection - Look for and remove duplicate intersection results. Fixes bug with multiple curve intersection results reported by Przemas in the forum here:<br/><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=10460.1<br />
<br />
Update chamfer command - swap. Add swap button when "Use 2 distances" is active. Requested on the forum by 3image here:<br/><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=10289.37<br />
<br />
Update mesh export vertex normal combining. Change vertex normal combining to use tolerance of 0.5 degrees instead of 3.0 degrees. It can also be changed now in moi.ini .<br/><br />
[Mesh Export]<br/><br />
UnifyVertexNormalsAngleToleranceDegrees=0.5<br />
<br />
Update background image properties dialog - add width/height fields. Requested by moritz on the forum here:<br/><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=10289.29<br />
<br />
Update text selection. Fix problem where text selection was lost when swiping a selection and releasing mouse button off of the UIPanel window.<br />
<br />
Update selection - multiple select. If multiple select only with shift key is enabled don't clear selection if ctrl is down so that Ctrl+drag will still work as a deselection window. Fixes bug reported on the forum by Viewbyte here:<br/><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=10439.3<br />
<br />
Update DXF import - fix LWPOLYLINE import 16 bit overflow crash bug reported through e-mail by Jörg Vollmer.<br />
<br />
Update curve drawing corners - Make the current active point in curve drawing be shown as a corner if ctrl is down. Previously it would only show as a corner after it was picked.<br />
<br />
Update STEP import - FACETED_BREP entities. v3 would read FACETED_BREP entities but this was lost in v4 with the restructuring to use multiple threads. Process these now, fixes v3/v4 regression reported on the forum by Martin here:<br/><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=10415.7<br />
<br />
Update Flow. Sew edges for flow result so a closed tube will have start/end edges joined to make a solid.<br />
<br />
Update ArcCenter command - int snap. Enable radial intersection snap point for ArcCenter command. Fixes a bug reported by Andre in the forum here:<br/><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=10399.1<br />
<br />
Fix transform regression. Fix regression where invalidating hit test map on selection change (change near the end of v4 beta) was causing transforms like object drag to regenerate the hit test map on every mousemove. Fixes a performance regression reported through e-mail by Massimo.<br />
<br />
Add option for grid opacity in moi.ini under [Grid] GridOpacity=255<br />
<br />
Update relative expressions. Add in percent relative expression, so you can put in 120% into a distance field to alter the current value.<br />
<br />
Fixes for running on Mac with case sensitive filesystem.<br />
<br />
Update Loft with loft style = straight. Loft with loft style = straight would generate longer faces in coplanar segments. Fixes bug reported by Ed Ferguson in the forum here:<br/><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=10160.1<br />
<br />
Update Merge command. Process curves with Merge command - will merge G1 segments together.<br />
<br />
Various other minor bug fixes.<br />
<br />
<br />
<b>Scripting:</b><br />
<br />
Updated FilesystemObjectModel::getFiles() - Added optional 3rd parameter to recurse subdirectories.<br />
<br />
Added annotationFrame property to annotation objects so that a script can get an annotation object's plane.<br />
<br />
Edit points scripting - Add scripting interface on objects for:<br/><br />
&nbsp;&nbsp;&nbsp;&nbsp;obj.hasEditPoints - read-only property true if object has edit points, false if not.<br/><br />
&nbsp;&nbsp;&nbsp;&nbsp;obj.hasSelectedEditPoints - read-only property true if object has any selected edit points.<br/><br />
&nbsp;&nbsp;&nbsp;&nbsp;obj.numEditPoints - read-only property for number of edit points.<br/><br />
&nbsp;&nbsp;&nbsp;&nbsp;obj.getEditPoint( index ) - method that returns an x,y,z point for the given edit point index.<br/><br />
&nbsp;&nbsp;&nbsp;&nbsp;obj.getEditPointSelected( index ) - method that returns true if the given edit point is selected.<br/><br />
Also fix bug show points not refreshing redraw properly when set through script rather than through the show points command.<br />
<br />
Added isEllipticalArc property for curves and curvesegments.<br />
<br />
Update viewport.interactiveViewChange(). Add optional 2nd parameter to viewport.interactiveViewChange() function to allow a script to use it in a modal fashion. Fix for Ed's script posted on the forum here:<br/><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=10403.1<br />
<br />
Update save file dialog handling. Allow initializing dialog with a directory name, like:<br/><br />
SaveAs c:\output\fbx<br/><br />
When given a directory name the dialog will start out in that directory.<br />
</div><br />
<br />
<br />
== May-22-2022 ==<br />
<br />
[http://moi3d.com/forum/index.php?webtag=MOI&msg=10706.1 Forum announcement]<br />
<br />
<div style="width: 700px">This release is primarily bug fixes for various aspects of groups.<br />
<br />
<br />
Update group click selection. If Ctrl is held down, then deselect clicked on group instead of drill in.<br />
<br />
Update ungroup - Fix bug where ungroup didn't go just one step when top level group selected.<br />
<br />
Update group copy to clipboard - fix copy to clipboard with group sub object selected<br />
<br />
Update groups window selection. Ctrl+window select was not deselecting the full group when there was no drill in, was only deselecting sub objects. Fixed so that Ctrl+window select targets entire group if no drill in selection. If there is any drill in then leaf nodes will still be targeted instead.<br />
<br />
Add Group label in object type indicator in properties panel.<br />
<br />
Update Scene Browser groups - If an object is inside of a selected group, make it count as selected for displaying selection dot in Types and Styles sections.<br />
<br />
Update detailed object properties dialog for groups - report number of group children.<br />
<br />
Fix bug with groups in detailed object properties dialog showing the style of group objects instead of the group's children and not listing the styles when there are multiple styles in the group.<br />
<br />
Update Project command group processing<br />
<br />
Update select all for groups<br />
<br />
Update moi.geometrydatabase.selectLoop() to work with groups<br />
<br />
Update invert selection for groups<br />
<br />
Fix bug with groups with edit points on. When group was selected, dragging on edit point didn't work, whole group was being dragged instead.<br />
<br />
Update Separate command, groups. Make objects being separated break out from groups.<br />
<br />
Fix bug where drag point on curve would break modified object out of groups.<br />
<br />
Fix problem with group handling for Flow command.<br />
<br />
Fix group bug with ArrayCurve - groups appeared to lose selection when entering path picking stage in ArrayCurve.<br />
<br />
Update scene browser styles for Groups. Tweak styles to not accumulate status for parent group objects, just the contents of the group.<br />
<br />
Update properties panel for groups. Fix assigning style of groups by the properties panel style menu was only setting group parent object style and not child objects.<br />
<br />
<br />
Update radial dimensions. When cross size is set to 0 to disable center point cross lines, don't include radius center point for window selection and bounding box framing. Fixes a bug reported on the forum by Martin here:<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=10652.86<br />
<br />
Update scene browser assigning style - don't modify object hidden or locked state to match existing object states when all current assigned objects were hidden or locked. Can be re-enabled in moi.ini by setting [Scene Browser] AssignStyleAssumeTargetState=y .<br />
<br />
Update object drag - Fix regression bug ctrl+drag not working to drag copies of edge or face brep sub objects<br />
<br />
Add Ctrl+tab shortcut key. Puts focus in XYZ input always, doesn't go to input fields in command ui area.<br />
<br />
Fix Chamfer regression - Fix Chamfer regression introduced in v4 when making chamfer surfaces to be analytic plane objects. Fix bug in analytic plane/plane intersection that was causing chamfer to fail when 2 chamfer planes intersected each other.<br />
<br />
Update DXF export. Don't mess with handle values of DimStyle entries already in the template file. Fixes AutoCAD generating an error when trying to copy objects to the clipboard after opening a DXF file from MoI. Fixes a bug reported by Tim on the forum here:<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=10683.1<br />
<br />
Update grid display - axis labels. Support custom axis labels for grid axis colors. Fixes bug reported in forum by Dinos here:<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=10652.61<br />
<br />
Update Windows installer. Add file association for SVG format and set file association information to be removed from registry on uninstall.<br />
<br />
Themes - Add Terminal Green theme.<br />
<br />
Update Theme UI reload. Fix crash bug when editing theme viewport brightness with MiniSidePane.js startup script. Fixes a crash reported through e-mail by James Elliott.<br />
<br />
Fix unicode text theme bug. After processing theme defines, prefix .htm loaded data with a UTF8 byte order mark so the html parser will handle it as UTF8 content. Fixes a bug with translated plugins reported through e-mail by Pilou.<br />
<br />
Update 3DM import from SpaceClaim. If a 3DM file comes from SpaceClaim, look for any faces that hae very large underlying surfaces and shrink those down. Fixes a 3DM import problem reported by Tolya Vozya on the forum at:<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=10664.1<br />
<br />
</div><br />
<br />
<br />
== Mar-28-2023 ==<br />
<br />
[http://moi3d.com/forum/index.php?webtag=MOI&msg=11034.1 Forum announcement]<br />
<br />
<div style="width: 700px"><br />
<br />
Initial integration of the ACIS geometry kernel into MoI, starting with fillets.<br />
<br />
Fillets are now being calculated by ACIS. Still a work in progress but many types of fillets that failed before are now working.<br />
<br />
You can switch back to the old fillets with the "Library" option in the fillet command options.<br />
<br />
<br />
New cross hatching option when generating a 2D drawing to PDF, AI, or SVG formats:<br />
<br />
http://moi3d.com/forum/get_attachment.php?webtag=MOI&amp;hash=a4026a78ed7b47e203db833bbeb80b69&amp;filename=cross_hatching.png<br />
<br />
<br />
Thumbnail images are now written in .3dm files and shell extensions for Mac and Windows are included in MoI so you can now see thumbnail images when browsing .3dm files in Windows File Explorer or macOS Finder.<br><br />
You can disable making embedded thumbnail images under Options &gt; 3DM options &gt; "Write thumbnail preview image" checkbox.<br><br />
There is a setting in moi.ini for thumbnail image size: [3DM] ThumbnailSize=256<br><br />
Can range from 64 to 1024<br />
<br />
<br />
Supported platforms are a little different now due to the ACIS integration - on Windows, Windows 7 SP1, 8.1, 10 and 11 64-bit are supported. Windows 7 without SP1 and Windows 8.0 are not supported. On Mac 10.14 and higher is supported.<br />
<br />
<br />
Scene browser assignment - now when you click on a name in the Scene Browser, a menu will pop up with options for "Assign selection here" or "Rename":<br />
http://moi3d.com/forum/get_attachment.php?webtag=MOI&hash=c8c6d42c789df309c9eaf33f3bbbc04c&filename=BrowserAssignMenu1.png http://moi3d.com/forum/get_attachment.php?webtag=MOI&hash=df2c653062a7c98f07ee291a591eab4b&filename=BrowserAssignMenu2.png<br />
<br />
<br />
Update group selection - Make Ctrl+click on an unselected object that is inside of a group drill in to select that object directly instead of any intermediate groups.<br />
<br />
<br />
Various minor bug fixes with a lot for groups.<br />
<br />
<br />
Update SubD import - rotate Y-Up to Z-Up. By default rotate FBX subd import from the FBX Y-up coordinate system to MoI's Z-up coordinate system.<br />
Can be disabled for both OBJ and FBX imports with a new setting under:<br><br />
Options &gt; Import/Export &gt; SubD import options &gt; "Rotate y-up to z-up OBJ" and "Rotate y-up to z-up OBJ" checkboxes.<br />
<br />
<br />
Update array curve with "align to surface" option<br><br />
Minimize the rotation applied to align to surface normal. Fixes a bug reported in the forum by Barry here:<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=10725.1<br />
<br />
Update projection view dropdown<br><br />
Add an option "Active" in addition to 3D / Top / Front / Right when choosing projection views, which will use the active viewport.<br><br />
Affects Make2D, Silhouette commands and also AI/PDF/SVG/DXF export.<br />
<br />
<br />
Fix SVG locale bug<br><br />
Don't use locale-aware string formatting for SVG attributes. Should not have comma values for decimal separator.<br />
<br />
<br />
Update windows installer<br><br />
Add checkbox to installer for "Create file associations", so that changing file associations can be disabled by the user.<br />
<br />
<br />
Update Rebuild command<br><br />
Add option for Endpoints mode,either Points: Interpolate or Points: CVs for making either an interpolated curve or a control points curve from the polyline endpoints. Requested on the forum by pafurijaz here:<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=10953.9<br />
<br />
Update command parameters<br><br />
if there is a parameter repeat=true then set the repeat command checkbox.<br />
<br />
Add moi.ini option for controlling what version of SketchUp SKP file to write:<br><br />
[SKP]<br><br />
SUModelVersion=Current<br><br />
Version can be: SU3-SU8, SU2013-SU2016 and on Mac up to SU2021<br />
<br />
<br />
Scripting:<br />
<br />
Update moi.geometryDatabase.getObjects() group handling. Return objects inside groups with moi.geometryDatabase.getObjects() for increased compatibility<br />
with existing scripts. Can pass getObjects( false ) to disable going into groups.<br />
<br />
Group traversal - add .getFirstNode() and .getNextNode( current_node ) functions on group objects. This will only traverse groups and any objects that are the immediate child of a group but not go into sub-objects like curve segments.<br />
<br />
Implement document user text for scripts<br><br />
New document user text values so scripts can add data that is saved and restored from 3DM files.<br><br />
New methods under moi.geometryDatabase:<br><br />
.setUserText( Key, Value ); - Set text value for given key.<br><br />
.getUserText( Key ); - Returns text value for given key, or undefined if not present.<br><br />
.removeUserText( Key ); - Remove user text value for given key.<br><br />
.getAllUserText(); - Return list of all user text, each object has .key and .value properties.<br><br />
.clearAllUserText(); - Clear all document user text.<br><br />
<br />
There is also now object user text available for scripts to store data on an object:<br><br />
.setUserText( Key, Value ); - Set text value for given key.<br><br />
.getUserText( Key ); - Returns text value for given key, or undefined if not present.<br><br />
.removeUserText( Key ); - Remove user text value for given key.<br><br />
.getAllUserText(); - Return list of all user text, each object has .key and .value properties.<br><br />
.clearAllUserText(); - Clear all object user text.<br><br />
<br />
Document user text can also be viewed and edited under File &gt; Notes &gt; "Document user text" button and object user text will show on the "Details..." object properties dialog.<br />
<br />
<br />
Add screenTol property to point stream picker so behavior can be modified from the default 5 pixels that the mouse has to travel before generating a new point for Sketch curve.<br><br />
Can set pointstreampicker.screenTol = 0.0 to take all points regardless of distance from previous point, or something like pointstreampicker.screenTol = 30.0; to make it sparser.<br />
<br />
<br />
Make MoiList and ObjectList implement .push() and .pop() methods with same behavior as JavaScript array.<br><br />
For push() the arguments are appended to the end of the list in the order in which they appear. The new length of the list is returned as the result of the call. The push() for ObjectList can take another ObjectList or JavaScript array and it will look through the contents to find objects.<br />
<br />
For pop() the last element of the list is removed from the list and returned. If the list is empty, returns undefined.<br />
<br />
<br />
Updated script function argument getter. Code that is looking for an ObjectList passed as a function argument will now accept a single object and automatically wrap it with a temporary object list, and also accept a JavaScript array object which it will convert into a temporary object list.<br />
<br />
<br />
Update background image scripting<br><br />
Add .getEmbeddedImage() function on background images that will return an image object, so that image.szve() can be called to extract an embedded background image out to a separate file again. Requested by Brian on the forum here:<br><br />
http://moi3d.com/forum/messages.php?webtag=MOI&msg=10813.4<br />
<br />
Update face scripting<br><br />
face.isCylinderSurface - true if the underlying surface for this face is a cylinder.<br><br />
face.isConeSurface - true if the underlying surface for this face is a cone.<br><br />
face.isSphereSurface - true if the underlying surface for this face is a sphere.<br><br />
face.analyticFrame - coordinate frame for a cylinder, cone, or sphere surface.<br><br />
face.analyticRadius - radius for a cylinder, cone, or sphere surface.<br><br />
face.analyticHeight - height for a cylinder or cone surface.<br><br />
<br />
Update cplane scripting<br><br />
Update moi.view.setCPlaneInteractive() - return false if canceled and take optional boolean parameter for allowing nested cancel.<br><br />
Add moi.command.isCanceled to allow a script to determine if the current running command has been canceled.<br><br />
Add moi.command.pendingCommandName<br><br />
Clear command repeat checkbox if a modal dialog has been shown.<br><br />
<br />
Update moi.ini scripting<br><br />
Add moi.settings.writeIniFile() which will flush the in-memory contents of moi.ini out to disk.<br><br />
Add moi.settings.getIniValue( 'Section name', 'Key name') which will return an ini value to the calling script or return undefined if not present.<br />
<br />
<br />
Make all Moi JS objects implement a .toString() function that will give back the individual class name instead of the same generic "MoiObj" name.<br><br />
So for example doing this on an object list:<br><br />
var objlist = moi.geometryDatabase.createObjectList();<br><br />
var name = objlist.toString();<br><br />
will now give back [object ObjectList], instead of [object MoiObj].<br />
<br />
Also MoI script objects can now enumerate object properties using for ... in syntax, like:<br><br />
for ( propname in obj )<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;var val = obj[ propname ];<br />
<br />
<br />
Update Pointpicker scripting<br><br />
Add pointpicker.screenpt - returns 2d mouse coordinates<br><br />
Add pointpicker.hitTestSnapPoints( Points ) - takes array of xyz point objects, returns index of one closest to the mouse and within object snap radius or -1 if none found.<br><br />
Helper function for implementing custom snap function as described here:<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=10917.2<br />
<br />
<br />
Add moi.filesystem.getDirName() - directory picker<br><br />
var dir = moi.filesystem.getDirName( 'Dialog caption', 'c:\\initpath' );<br><br />
returns empty string if canceled.<br />
<br />
Add object.setEditPointSelected( index, value ); on objects as a way to set the selection state of an edit point.<br />
<br />
Update scripting window position and size.<br><br />
If a script calls window.move(x,y) or window.resize(w,h) before the window has been loaded, record the given position or size and apply<br />
them when the window is finished loading.<br />
<br />
Update scripting - selection undo<br><br />
Add moi.geometryDatabase.saveSelectionUndo() and moi.geometryDatabase.setSelectionUndoRevision()<br><br />
so scripts can have selection undo set up for changes to selection/hidden/locked properties as described on the forum here:<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=10939.10<br />
<br />
Update scripting, annotation points and construction lines.<br><br />
Add method for creating a consruction line from script:<br><br />
moi.geometryDatabase.addConstructionLine( start, end, isTemporary );<br><br />
Add annotation.getPoints() which returns a list of the defining points for the annotation.<br />
<br />
Update point picker<br><br />
Add new properties to control pointpicker:<br><br />
pointpicker.dontMakeConstructionLines = true;<br><br />
pointpicker.finishOnMouseMove = true;<br><br />
Add pointpicker.disableGridSnap and pointstreampicker.disableGridSnap properties.<br />
<br />
</div><br />
<br />
<br />
== Apr-13-2023 ==<br />
<br />
[http://moi3d.com/forum/index.php?webtag=MOI&msg=11043.1 Forum announcement]<br />
<br />
<div style="width: 700px"><br />
Various bug fixes for the new filleting.<br />
</div></div>Michael Gibsonhttp://moi3d.com/wiki/index.php?title=V5Beta&diff=1063V5Beta2023-04-08T22:15:52Z<p>Michael Gibson: </p>
<hr />
<div><big>Release notes for each V5 beta release are gathered here.</big><br />
<br />
== Apr-10-2022 ==<br />
<br />
[http://moi3d.com/forum/index.php?webtag=MOI&msg=10652.1 Forum announcement]<br />
<br />
<div style="width: 700px">New stuff:<br />
<br />
Dark UI theme and theme editor available under Options &gt; General &gt; "UI Theme".<br />
<br />
Groups - create a group using the menu on the "Objects" section of the Scene Browser.<br />
<br />
Types section of the Scene Browser has additional sub types like "Types &gt; Curves &gt; Circles" can be used to target just curves that are circles.<br />
Sub types include:<br/><br />
&nbsp;&nbsp;&nbsp;&nbsp;Curves &gt; Open, Closed, Planar, Lines, Polylines, Circles, Arcs, Ellipses, Elliptical arcs<br/><br />
&nbsp;&nbsp;&nbsp;&nbsp;Surfaces &gt; Planar<br/><br />
&nbsp;&nbsp;&nbsp;&nbsp;Edges &gt; Joined, Naked<br/><br />
&nbsp;&nbsp;&nbsp;&nbsp;Properties &gt; Selected, Unselected, Locked, Unlocked, Visible, New objects.<br/><br />
<br />
Support for import/export to SVG format.<br />
<br />
SubD conversion now supports FBX format.<br />
<br />
The Mac version is now a universal binary that contains code for both Intel and M1 CPU architectures.<br />
<br />
Added File &gt; Notes button for setting text notes that are saved inside of a .3dm file.<br />
<br />
Scene browser - click on text label of an item in the Objects section of the scene browser to assign current selection to a name or group.<br />
<br />
Annotation text display engine performance - Hoist several Qt text layout calls up to layout time rather than calling at render time. Major improvement to render performance for text. Also if model units sized text is small on screen render as a textured quad instead of using text geometry.<br />
<br />
Scene browser - Add "Unnamed" entry under Objects to allow targeting of all objects without a name.<br />
<br />
Update STEP export - split closed surfaces Default is on, can be set in moi.ini under:<br/><br />
[STEP]<br/><br />
ExportSplitClosedSurfaces=n<br />
<br />
Update tab controls - Add dot to active tab.<br />
<br />
New rendering platforms - support for Direct3D9 on Windows and Metal on Mac. Can be set in moi.ini under [View] GraphicsAPI=Direct3D9 or GraphicsAPI=Metal . If you are having problems with a particular video driver you can try using one of these alternatives.<br />
<br />
Added experimental ViewProject command that transforms objects by a perspective projection.<br />
<br />
Support clipboard copy/paste of SVG format. To copy to the clipboard using SVG format, set up a shortcut key with this:<br/><br />
script: moi.geometryDatabase.copyToClipboardSVG();<br />
<br />
Update default render engine on Wine - Default to Direct3D11 on Wine instead of OpenGL. Wine seems to compensate for various driver bugs in its Direct3D layer.<br />
<br />
Update text rendering under Wine. Wine seems to have a bug in ID3D11DeviceContext::UpdateSubresource when it's being applied to an 8-bit luminance texture. When running under Wine use a 32-bit texture format for the text texture to avoid running into this.<br />
<br />
Fix Mac version bug where doing a double right click could get stuck in a loop if there was a file dialog being shown after the double right click happened.<br />
<br />
Fix crash bug in Extrude when extruding a curve with a large number of segments and with particular weight values. Fixes a bug reported by Scott Carson in e-mail.<br />
<br />
Fix boolean bug where edges that touched at singularity were being incorrectly merged in boolean union. Fixes a bug reported through e-mail by Christopher Schardt.<br />
<br />
Fix boolean problem with multi object booleans where tolerance settings were being handled slightly differently when many objects were being booleaned. This could sometimes yield different results when booleaning many objects at once instead of only 2 at a time. Fixes a boolean union bug reported through e-mail by Christopher Schardt.<br />
<br />
Update Mac trackpad/Magic Mouse handling. Give up trying to automatically figure out if a scroll message is coming from Magic Mouse or trackpad it does not appear to be possible to do this reliably. So make Magic Mouse scroll behave same as trackpad scroll, the moi.ini option for doing trackpad scroll as a wheel mouse ([MultiTouch] UseTrackpadScrollAsMouseWheel=y) can be used to get old behavior on Magic Mouse.<br />
Also holding down Alt while doing a trackpad scroll will instead do a wheel zoom now.<br />
There is also a new parameter to reverse scroll/pan: [MultiTouch] ReverseTrackpadScroll=y<br />
<br />
Updated Sweep 2 rails maintain height mode. If the the 2 rails start or end in a point don't disable "Maintain height" for the entire sweep, instead handle the scaling down to a point after the first or last proflie.<br />
<br />
Update background images - Add in moi.ini option to make background image embed turned on by default.<br/><br />
[View]<br/><br />
BackgroundImageEmbedDefault=y<br />
<br />
Update surface/surface intersection - Look for and remove duplicate intersection results. Fixes bug with multiple curve intersection results reported by Przemas in the forum here:<br/><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=10460.1<br />
<br />
Update chamfer command - swap. Add swap button when "Use 2 distances" is active. Requested on the forum by 3image here:<br/><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=10289.37<br />
<br />
Update mesh export vertex normal combining. Change vertex normal combining to use tolerance of 0.5 degrees instead of 3.0 degrees. It can also be changed now in moi.ini .<br/><br />
[Mesh Export]<br/><br />
UnifyVertexNormalsAngleToleranceDegrees=0.5<br />
<br />
Update background image properties dialog - add width/height fields. Requested by moritz on the forum here:<br/><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=10289.29<br />
<br />
Update text selection. Fix problem where text selection was lost when swiping a selection and releasing mouse button off of the UIPanel window.<br />
<br />
Update selection - multiple select. If multiple select only with shift key is enabled don't clear selection if ctrl is down so that Ctrl+drag will still work as a deselection window. Fixes bug reported on the forum by Viewbyte here:<br/><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=10439.3<br />
<br />
Update DXF import - fix LWPOLYLINE import 16 bit overflow crash bug reported through e-mail by Jörg Vollmer.<br />
<br />
Update curve drawing corners - Make the current active point in curve drawing be shown as a corner if ctrl is down. Previously it would only show as a corner after it was picked.<br />
<br />
Update STEP import - FACETED_BREP entities. v3 would read FACETED_BREP entities but this was lost in v4 with the restructuring to use multiple threads. Process these now, fixes v3/v4 regression reported on the forum by Martin here:<br/><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=10415.7<br />
<br />
Update Flow. Sew edges for flow result so a closed tube will have start/end edges joined to make a solid.<br />
<br />
Update ArcCenter command - int snap. Enable radial intersection snap point for ArcCenter command. Fixes a bug reported by Andre in the forum here:<br/><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=10399.1<br />
<br />
Fix transform regression. Fix regression where invalidating hit test map on selection change (change near the end of v4 beta) was causing transforms like object drag to regenerate the hit test map on every mousemove. Fixes a performance regression reported through e-mail by Massimo.<br />
<br />
Add option for grid opacity in moi.ini under [Grid] GridOpacity=255<br />
<br />
Update relative expressions. Add in percent relative expression, so you can put in 120% into a distance field to alter the current value.<br />
<br />
Fixes for running on Mac with case sensitive filesystem.<br />
<br />
Update Loft with loft style = straight. Loft with loft style = straight would generate longer faces in coplanar segments. Fixes bug reported by Ed Ferguson in the forum here:<br/><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=10160.1<br />
<br />
Update Merge command. Process curves with Merge command - will merge G1 segments together.<br />
<br />
Various other minor bug fixes.<br />
<br />
<br />
<b>Scripting:</b><br />
<br />
Updated FilesystemObjectModel::getFiles() - Added optional 3rd parameter to recurse subdirectories.<br />
<br />
Added annotationFrame property to annotation objects so that a script can get an annotation object's plane.<br />
<br />
Edit points scripting - Add scripting interface on objects for:<br/><br />
&nbsp;&nbsp;&nbsp;&nbsp;obj.hasEditPoints - read-only property true if object has edit points, false if not.<br/><br />
&nbsp;&nbsp;&nbsp;&nbsp;obj.hasSelectedEditPoints - read-only property true if object has any selected edit points.<br/><br />
&nbsp;&nbsp;&nbsp;&nbsp;obj.numEditPoints - read-only property for number of edit points.<br/><br />
&nbsp;&nbsp;&nbsp;&nbsp;obj.getEditPoint( index ) - method that returns an x,y,z point for the given edit point index.<br/><br />
&nbsp;&nbsp;&nbsp;&nbsp;obj.getEditPointSelected( index ) - method that returns true if the given edit point is selected.<br/><br />
Also fix bug show points not refreshing redraw properly when set through script rather than through the show points command.<br />
<br />
Added isEllipticalArc property for curves and curvesegments.<br />
<br />
Update viewport.interactiveViewChange(). Add optional 2nd parameter to viewport.interactiveViewChange() function to allow a script to use it in a modal fashion. Fix for Ed's script posted on the forum here:<br/><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=10403.1<br />
<br />
Update save file dialog handling. Allow initializing dialog with a directory name, like:<br/><br />
SaveAs c:\output\fbx<br/><br />
When given a directory name the dialog will start out in that directory.<br />
</div><br />
<br />
<br />
== May-22-2022 ==<br />
<br />
[http://moi3d.com/forum/index.php?webtag=MOI&msg=10706.1 Forum announcement]<br />
<br />
<div style="width: 700px">This release is primarily bug fixes for various aspects of groups.<br />
<br />
<br />
Update group click selection. If Ctrl is held down, then deselect clicked on group instead of drill in.<br />
<br />
Update ungroup - Fix bug where ungroup didn't go just one step when top level group selected.<br />
<br />
Update group copy to clipboard - fix copy to clipboard with group sub object selected<br />
<br />
Update groups window selection. Ctrl+window select was not deselecting the full group when there was no drill in, was only deselecting sub objects. Fixed so that Ctrl+window select targets entire group if no drill in selection. If there is any drill in then leaf nodes will still be targeted instead.<br />
<br />
Add Group label in object type indicator in properties panel.<br />
<br />
Update Scene Browser groups - If an object is inside of a selected group, make it count as selected for displaying selection dot in Types and Styles sections.<br />
<br />
Update detailed object properties dialog for groups - report number of group children.<br />
<br />
Fix bug with groups in detailed object properties dialog showing the style of group objects instead of the group's children and not listing the styles when there are multiple styles in the group.<br />
<br />
Update Project command group processing<br />
<br />
Update select all for groups<br />
<br />
Update moi.geometrydatabase.selectLoop() to work with groups<br />
<br />
Update invert selection for groups<br />
<br />
Fix bug with groups with edit points on. When group was selected, dragging on edit point didn't work, whole group was being dragged instead.<br />
<br />
Update Separate command, groups. Make objects being separated break out from groups.<br />
<br />
Fix bug where drag point on curve would break modified object out of groups.<br />
<br />
Fix problem with group handling for Flow command.<br />
<br />
Fix group bug with ArrayCurve - groups appeared to lose selection when entering path picking stage in ArrayCurve.<br />
<br />
Update scene browser styles for Groups. Tweak styles to not accumulate status for parent group objects, just the contents of the group.<br />
<br />
Update properties panel for groups. Fix assigning style of groups by the properties panel style menu was only setting group parent object style and not child objects.<br />
<br />
<br />
Update radial dimensions. When cross size is set to 0 to disable center point cross lines, don't include radius center point for window selection and bounding box framing. Fixes a bug reported on the forum by Martin here:<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=10652.86<br />
<br />
Update scene browser assigning style - don't modify object hidden or locked state to match existing object states when all current assigned objects were hidden or locked. Can be re-enabled in moi.ini by setting [Scene Browser] AssignStyleAssumeTargetState=y .<br />
<br />
Update object drag - Fix regression bug ctrl+drag not working to drag copies of edge or face brep sub objects<br />
<br />
Add Ctrl+tab shortcut key. Puts focus in XYZ input always, doesn't go to input fields in command ui area.<br />
<br />
Fix Chamfer regression - Fix Chamfer regression introduced in v4 when making chamfer surfaces to be analytic plane objects. Fix bug in analytic plane/plane intersection that was causing chamfer to fail when 2 chamfer planes intersected each other.<br />
<br />
Update DXF export. Don't mess with handle values of DimStyle entries already in the template file. Fixes AutoCAD generating an error when trying to copy objects to the clipboard after opening a DXF file from MoI. Fixes a bug reported by Tim on the forum here:<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=10683.1<br />
<br />
Update grid display - axis labels. Support custom axis labels for grid axis colors. Fixes bug reported in forum by Dinos here:<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=10652.61<br />
<br />
Update Windows installer. Add file association for SVG format and set file association information to be removed from registry on uninstall.<br />
<br />
Themes - Add Terminal Green theme.<br />
<br />
Update Theme UI reload. Fix crash bug when editing theme viewport brightness with MiniSidePane.js startup script. Fixes a crash reported through e-mail by James Elliott.<br />
<br />
Fix unicode text theme bug. After processing theme defines, prefix .htm loaded data with a UTF8 byte order mark so the html parser will handle it as UTF8 content. Fixes a bug with translated plugins reported through e-mail by Pilou.<br />
<br />
Update 3DM import from SpaceClaim. If a 3DM file comes from SpaceClaim, look for any faces that hae very large underlying surfaces and shrink those down. Fixes a 3DM import problem reported by Tolya Vozya on the forum at:<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=10664.1<br />
<br />
</div><br />
<br />
<br />
== Mar-28-2023 ==<br />
<br />
[http://moi3d.com/forum/index.php?webtag=MOI&msg=11034.1 Forum announcement]<br />
<br />
<div style="width: 700px"><br />
<br />
Initial integration of the ACIS geometry kernel into MoI, starting with fillets.<br />
<br />
Fillets are now being calculated by ACIS. Still a work in progress but many types of fillets that failed before are now working.<br />
<br />
You can switch back to the old fillets with the "Library" option in the fillet command options.<br />
<br />
<br />
New cross hatching option when generating a 2D drawing to PDF, AI, or SVG formats:<br />
<br />
http://moi3d.com/forum/get_attachment.php?webtag=MOI&amp;hash=a4026a78ed7b47e203db833bbeb80b69&amp;filename=cross_hatching.png<br />
<br />
<br />
Thumbnail images are now written in .3dm files and shell extensions for Mac and Windows are included in MoI so you can now see thumbnail images when browsing .3dm files in Windows File Explorer or macOS Finder.<br><br />
You can disable making embedded thumbnail images under Options &gt; 3DM options &gt; "Write thumbnail preview image" checkbox.<br><br />
There is a setting in moi.ini for thumbnail image size: [3DM] ThumbnailSize=256<br><br />
Can range from 64 to 1024<br />
<br />
<br />
Supported platforms are a little different now due to the ACIS integration - on Windows, Windows 7 SP1, 8.1, 10 and 11 64-bit are supported. Windows 7 without SP1 and Windows 8.0 are not supported. On Mac 10.14 and higher is supported.<br />
<br />
<br />
Scene browser assignment - now when you click on a name in the Scene Browser, a menu will pop up with options for "Assign selection here" or "Rename":<br />
http://moi3d.com/forum/get_attachment.php?webtag=MOI&hash=c8c6d42c789df309c9eaf33f3bbbc04c&filename=BrowserAssignMenu1.png http://moi3d.com/forum/get_attachment.php?webtag=MOI&hash=df2c653062a7c98f07ee291a591eab4b&filename=BrowserAssignMenu2.png<br />
<br />
<br />
Update group selection - Make Ctrl+click on an unselected object that is inside of a group drill in to select that object directly instead of any intermediate groups.<br />
<br />
<br />
Various minor bug fixes with a lot for groups.<br />
<br />
<br />
Update SubD import - rotate Y-Up to Z-Up. By default rotate FBX subd import from the FBX Y-up coordinate system to MoI's Z-up coordinate system.<br />
Can be disabled for both OBJ and FBX imports with a new setting under:<br><br />
Options &gt; Import/Export &gt; SubD import options &gt; "Rotate y-up to z-up OBJ" and "Rotate y-up to z-up OBJ" checkboxes.<br />
<br />
<br />
Update array curve with "align to surface" option<br><br />
Minimize the rotation applied to align to surface normal. Fixes a bug reported in the forum by Barry here:<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=10725.1<br />
<br />
Update projection view dropdown<br><br />
Add an option "Active" in addition to 3D / Top / Front / Right when choosing projection views, which will use the active viewport.<br><br />
Affects Make2D, Silhouette commands and also AI/PDF/SVG/DXF export.<br />
<br />
<br />
Fix SVG locale bug<br><br />
Don't use locale-aware string formatting for SVG attributes. Should not have comma values for decimal separator.<br />
<br />
<br />
Update windows installer<br><br />
Add checkbox to installer for "Create file associations", so that changing file associations can be disabled by the user.<br />
<br />
<br />
Update Rebuild command<br><br />
Add option for Endpoints mode,either Points: Interpolate or Points: CVs for making either an interpolated curve or a control points curve from the polyline endpoints. Requested on the forum by pafurijaz here:<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=10953.9<br />
<br />
Update command parameters<br><br />
if there is a parameter repeat=true then set the repeat command checkbox.<br />
<br />
Add moi.ini option for controlling what version of SketchUp SKP file to write:<br><br />
[SKP]<br><br />
SUModelVersion=Current<br><br />
Version can be: SU3-SU8, SU2013-SU2016 and on Mac up to SU2021<br />
<br />
<br />
Scripting:<br />
<br />
Update moi.geometryDatabase.getObjects() group handling. Return objects inside groups with moi.geometryDatabase.getObjects() for increased compatibility<br />
with existing scripts. Can pass getObjects( false ) to disable going into groups.<br />
<br />
Group traversal - add .getFirstNode() and .getNextNode( current_node ) functions on group objects. This will only traverse groups and any objects that are the immediate child of a group but not go into sub-objects like curve segments.<br />
<br />
Implement document user text for scripts<br><br />
New document user text values so scripts can add data that is saved and restored from 3DM files.<br><br />
New methods under moi.geometryDatabase:<br><br />
.setUserText( Key, Value ); - Set text value for given key.<br><br />
.getUserText( Key ); - Returns text value for given key, or undefined if not present.<br><br />
.removeUserText( Key ); - Remove user text value for given key.<br><br />
.getAllUserText(); - Return list of all user text, each object has .key and .value properties.<br><br />
.clearAllUserText(); - Clear all document user text.<br><br />
<br />
There is also now object user text available for scripts to store data on an object:<br><br />
.setUserText( Key, Value ); - Set text value for given key.<br><br />
.getUserText( Key ); - Returns text value for given key, or undefined if not present.<br><br />
.removeUserText( Key ); - Remove user text value for given key.<br><br />
.getAllUserText(); - Return list of all user text, each object has .key and .value properties.<br><br />
.clearAllUserText(); - Clear all object user text.<br><br />
<br />
Document user text can also be viewed and edited under File &gt; Notes &gt; "Document user text" button and object user text will show on the "Details..." object properties dialog.<br />
<br />
<br />
Add screenTol property to point stream picker so behavior can be modified from the default 5 pixels that the mouse has to travel before generating a new point for Sketch curve.<br><br />
Can set pointstreampicker.screenTol = 0.0 to take all points regardless of distance from previous point, or something like pointstreampicker.screenTol = 30.0; to make it sparser.<br />
<br />
<br />
Make MoiList and ObjectList implement .push() and .pop() methods with same behavior as JavaScript array.<br><br />
For push() the arguments are appended to the end of the list in the order in which they appear. The new length of the list is returned as the result of the call. The push() for ObjectList can take another ObjectList or JavaScript array and it will look through the contents to find objects.<br />
<br />
For pop() the last element of the list is removed from the list and returned. If the list is empty, returns undefined.<br />
<br />
<br />
Updated script function argument getter. Code that is looking for an ObjectList passed as a function argument will now accept a single object and automatically wrap it with a temporary object list, and also accept a JavaScript array object which it will convert into a temporary object list.<br />
<br />
<br />
Update background image scripting<br><br />
Add .getEmbeddedImage() function on background images that will return an image object, so that image.szve() can be called to extract an embedded background image out to a separate file again. Requested by Brian on the forum here:<br><br />
http://moi3d.com/forum/messages.php?webtag=MOI&msg=10813.4<br />
<br />
Update face scripting<br><br />
face.isCylinderSurface - true if the underlying surface for this face is a cylinder.<br><br />
face.isConeSurface - true if the underlying surface for this face is a cone.<br><br />
face.isSphereSurface - true if the underlying surface for this face is a sphere.<br><br />
face.analyticFrame - coordinate frame for a cylinder, cone, or sphere surface.<br><br />
face.analyticRadius - radius for a cylinder, cone, or sphere surface.<br><br />
face.analyticHeight - height for a cylinder or cone surface.<br><br />
<br />
Update cplane scripting<br><br />
Update moi.view.setCPlaneInteractive() - return false if canceled and take optional boolean parameter for allowing nested cancel.<br><br />
Add moi.command.isCanceled to allow a script to determine if the current running command has been canceled.<br><br />
Add moi.command.pendingCommandName<br><br />
Clear command repeat checkbox if a modal dialog has been shown.<br><br />
<br />
Update moi.ini scripting<br><br />
Add moi.settings.writeIniFile() which will flush the in-memory contents of moi.ini out to disk.<br><br />
Add moi.settings.getIniValue( 'Section name', 'Key name') which will return an ini value to the calling script or return undefined if not present.<br />
<br />
<br />
Make all Moi JS objects implement a .toString() function that will give back the individual class name instead of the same generic "MoiObj" name.<br><br />
So for example doing this on an object list:<br><br />
var objlist = moi.geometryDatabase.createObjectList();<br><br />
var name = objlist.toString();<br><br />
will now give back [object ObjectList], instead of [object MoiObj].<br />
<br />
Also MoI script objects can now enumerate object properties using for ... in syntax, like:<br><br />
for ( propname in obj )<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;var val = obj[ propname ];<br />
<br />
<br />
Update Pointpicker scripting<br><br />
Add pointpicker.screenpt - returns 2d mouse coordinates<br><br />
Add pointpicker.hitTestSnapPoints( Points ) - takes array of xyz point objects, returns index of one closest to the mouse and within object snap radius or -1 if none found.<br><br />
Helper function for implementing custom snap function as described here:<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=10917.2<br />
<br />
<br />
Add moi.filesystem.getDirName() - directory picker<br><br />
var dir = moi.filesystem.getDirName( 'Dialog caption', 'c:\\initpath' );<br><br />
returns empty string if canceled.<br />
<br />
Add object.setEditPointSelected( index, value ); on objects as a way to set the selection state of an edit point.<br />
<br />
Update scripting window position and size.<br><br />
If a script calls window.move(x,y) or window.resize(w,h) before the window has been loaded, record the given position or size and apply<br />
them when the window is finished loading.<br />
<br />
Update scripting - selection undo<br><br />
Add moi.geometryDatabase.saveSelectionUndo() and moi.geometryDatabase.setSelectionUndoRevision()<br><br />
so scripts can have selection undo set up for changes to selection/hidden/locked properties as described on the forum here:<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=10939.10<br />
<br />
Update scripting, annotation points and construction lines.<br><br />
Add method for creating a consruction line from script:<br><br />
moi.geometryDatabase.addConstructionLine( start, end, isTemporary );<br><br />
Add annotation.getPoints() which returns a list of the defining points for the annotation.<br />
<br />
Update point picker<br><br />
Add new properties to control pointpicker:<br><br />
pointpicker.dontMakeConstructionLines = true;<br><br />
pointpicker.finishOnMouseMove = true;<br><br />
Add pointpicker.disableGridSnap and pointstreampicker.disableGridSnap properties.<br />
<br />
</div><br />
<br />
<br />
== Mar-28-2023 ==<br />
<br />
[http://moi3d.com/forum/index.php?webtag=MOI&msg=11043.1 Forum announcement]<br />
<br />
<div style="width: 700px"><br />
Various bug fixes for the new filleting.<br />
</div></div>Michael Gibsonhttp://moi3d.com/wiki/index.php?title=V5Beta&diff=1062V5Beta2023-04-02T19:47:07Z<p>Michael Gibson: /* Mar-28-2023 */</p>
<hr />
<div><big>Release notes for each V5 beta release are gathered here.</big><br />
<br />
== Apr-10-2022 ==<br />
<br />
[http://moi3d.com/forum/index.php?webtag=MOI&msg=10652.1 Forum announcement]<br />
<br />
<div style="width: 700px">New stuff:<br />
<br />
Dark UI theme and theme editor available under Options &gt; General &gt; "UI Theme".<br />
<br />
Groups - create a group using the menu on the "Objects" section of the Scene Browser.<br />
<br />
Types section of the Scene Browser has additional sub types like "Types &gt; Curves &gt; Circles" can be used to target just curves that are circles.<br />
Sub types include:<br/><br />
&nbsp;&nbsp;&nbsp;&nbsp;Curves &gt; Open, Closed, Planar, Lines, Polylines, Circles, Arcs, Ellipses, Elliptical arcs<br/><br />
&nbsp;&nbsp;&nbsp;&nbsp;Surfaces &gt; Planar<br/><br />
&nbsp;&nbsp;&nbsp;&nbsp;Edges &gt; Joined, Naked<br/><br />
&nbsp;&nbsp;&nbsp;&nbsp;Properties &gt; Selected, Unselected, Locked, Unlocked, Visible, New objects.<br/><br />
<br />
Support for import/export to SVG format.<br />
<br />
SubD conversion now supports FBX format.<br />
<br />
The Mac version is now a universal binary that contains code for both Intel and M1 CPU architectures.<br />
<br />
Added File &gt; Notes button for setting text notes that are saved inside of a .3dm file.<br />
<br />
Scene browser - click on text label of an item in the Objects section of the scene browser to assign current selection to a name or group.<br />
<br />
Annotation text display engine performance - Hoist several Qt text layout calls up to layout time rather than calling at render time. Major improvement to render performance for text. Also if model units sized text is small on screen render as a textured quad instead of using text geometry.<br />
<br />
Scene browser - Add "Unnamed" entry under Objects to allow targeting of all objects without a name.<br />
<br />
Update STEP export - split closed surfaces Default is on, can be set in moi.ini under:<br/><br />
[STEP]<br/><br />
ExportSplitClosedSurfaces=n<br />
<br />
Update tab controls - Add dot to active tab.<br />
<br />
New rendering platforms - support for Direct3D9 on Windows and Metal on Mac. Can be set in moi.ini under [View] GraphicsAPI=Direct3D9 or GraphicsAPI=Metal . If you are having problems with a particular video driver you can try using one of these alternatives.<br />
<br />
Added experimental ViewProject command that transforms objects by a perspective projection.<br />
<br />
Support clipboard copy/paste of SVG format. To copy to the clipboard using SVG format, set up a shortcut key with this:<br/><br />
script: moi.geometryDatabase.copyToClipboardSVG();<br />
<br />
Update default render engine on Wine - Default to Direct3D11 on Wine instead of OpenGL. Wine seems to compensate for various driver bugs in its Direct3D layer.<br />
<br />
Update text rendering under Wine. Wine seems to have a bug in ID3D11DeviceContext::UpdateSubresource when it's being applied to an 8-bit luminance texture. When running under Wine use a 32-bit texture format for the text texture to avoid running into this.<br />
<br />
Fix Mac version bug where doing a double right click could get stuck in a loop if there was a file dialog being shown after the double right click happened.<br />
<br />
Fix crash bug in Extrude when extruding a curve with a large number of segments and with particular weight values. Fixes a bug reported by Scott Carson in e-mail.<br />
<br />
Fix boolean bug where edges that touched at singularity were being incorrectly merged in boolean union. Fixes a bug reported through e-mail by Christopher Schardt.<br />
<br />
Fix boolean problem with multi object booleans where tolerance settings were being handled slightly differently when many objects were being booleaned. This could sometimes yield different results when booleaning many objects at once instead of only 2 at a time. Fixes a boolean union bug reported through e-mail by Christopher Schardt.<br />
<br />
Update Mac trackpad/Magic Mouse handling. Give up trying to automatically figure out if a scroll message is coming from Magic Mouse or trackpad it does not appear to be possible to do this reliably. So make Magic Mouse scroll behave same as trackpad scroll, the moi.ini option for doing trackpad scroll as a wheel mouse ([MultiTouch] UseTrackpadScrollAsMouseWheel=y) can be used to get old behavior on Magic Mouse.<br />
Also holding down Alt while doing a trackpad scroll will instead do a wheel zoom now.<br />
There is also a new parameter to reverse scroll/pan: [MultiTouch] ReverseTrackpadScroll=y<br />
<br />
Updated Sweep 2 rails maintain height mode. If the the 2 rails start or end in a point don't disable "Maintain height" for the entire sweep, instead handle the scaling down to a point after the first or last proflie.<br />
<br />
Update background images - Add in moi.ini option to make background image embed turned on by default.<br/><br />
[View]<br/><br />
BackgroundImageEmbedDefault=y<br />
<br />
Update surface/surface intersection - Look for and remove duplicate intersection results. Fixes bug with multiple curve intersection results reported by Przemas in the forum here:<br/><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=10460.1<br />
<br />
Update chamfer command - swap. Add swap button when "Use 2 distances" is active. Requested on the forum by 3image here:<br/><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=10289.37<br />
<br />
Update mesh export vertex normal combining. Change vertex normal combining to use tolerance of 0.5 degrees instead of 3.0 degrees. It can also be changed now in moi.ini .<br/><br />
[Mesh Export]<br/><br />
UnifyVertexNormalsAngleToleranceDegrees=0.5<br />
<br />
Update background image properties dialog - add width/height fields. Requested by moritz on the forum here:<br/><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=10289.29<br />
<br />
Update text selection. Fix problem where text selection was lost when swiping a selection and releasing mouse button off of the UIPanel window.<br />
<br />
Update selection - multiple select. If multiple select only with shift key is enabled don't clear selection if ctrl is down so that Ctrl+drag will still work as a deselection window. Fixes bug reported on the forum by Viewbyte here:<br/><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=10439.3<br />
<br />
Update DXF import - fix LWPOLYLINE import 16 bit overflow crash bug reported through e-mail by Jörg Vollmer.<br />
<br />
Update curve drawing corners - Make the current active point in curve drawing be shown as a corner if ctrl is down. Previously it would only show as a corner after it was picked.<br />
<br />
Update STEP import - FACETED_BREP entities. v3 would read FACETED_BREP entities but this was lost in v4 with the restructuring to use multiple threads. Process these now, fixes v3/v4 regression reported on the forum by Martin here:<br/><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=10415.7<br />
<br />
Update Flow. Sew edges for flow result so a closed tube will have start/end edges joined to make a solid.<br />
<br />
Update ArcCenter command - int snap. Enable radial intersection snap point for ArcCenter command. Fixes a bug reported by Andre in the forum here:<br/><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=10399.1<br />
<br />
Fix transform regression. Fix regression where invalidating hit test map on selection change (change near the end of v4 beta) was causing transforms like object drag to regenerate the hit test map on every mousemove. Fixes a performance regression reported through e-mail by Massimo.<br />
<br />
Add option for grid opacity in moi.ini under [Grid] GridOpacity=255<br />
<br />
Update relative expressions. Add in percent relative expression, so you can put in 120% into a distance field to alter the current value.<br />
<br />
Fixes for running on Mac with case sensitive filesystem.<br />
<br />
Update Loft with loft style = straight. Loft with loft style = straight would generate longer faces in coplanar segments. Fixes bug reported by Ed Ferguson in the forum here:<br/><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=10160.1<br />
<br />
Update Merge command. Process curves with Merge command - will merge G1 segments together.<br />
<br />
Various other minor bug fixes.<br />
<br />
<br />
<b>Scripting:</b><br />
<br />
Updated FilesystemObjectModel::getFiles() - Added optional 3rd parameter to recurse subdirectories.<br />
<br />
Added annotationFrame property to annotation objects so that a script can get an annotation object's plane.<br />
<br />
Edit points scripting - Add scripting interface on objects for:<br/><br />
&nbsp;&nbsp;&nbsp;&nbsp;obj.hasEditPoints - read-only property true if object has edit points, false if not.<br/><br />
&nbsp;&nbsp;&nbsp;&nbsp;obj.hasSelectedEditPoints - read-only property true if object has any selected edit points.<br/><br />
&nbsp;&nbsp;&nbsp;&nbsp;obj.numEditPoints - read-only property for number of edit points.<br/><br />
&nbsp;&nbsp;&nbsp;&nbsp;obj.getEditPoint( index ) - method that returns an x,y,z point for the given edit point index.<br/><br />
&nbsp;&nbsp;&nbsp;&nbsp;obj.getEditPointSelected( index ) - method that returns true if the given edit point is selected.<br/><br />
Also fix bug show points not refreshing redraw properly when set through script rather than through the show points command.<br />
<br />
Added isEllipticalArc property for curves and curvesegments.<br />
<br />
Update viewport.interactiveViewChange(). Add optional 2nd parameter to viewport.interactiveViewChange() function to allow a script to use it in a modal fashion. Fix for Ed's script posted on the forum here:<br/><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=10403.1<br />
<br />
Update save file dialog handling. Allow initializing dialog with a directory name, like:<br/><br />
SaveAs c:\output\fbx<br/><br />
When given a directory name the dialog will start out in that directory.<br />
</div><br />
<br />
<br />
== May-22-2022 ==<br />
<br />
[http://moi3d.com/forum/index.php?webtag=MOI&msg=10706.1 Forum announcement]<br />
<br />
<div style="width: 700px">This release is primarily bug fixes for various aspects of groups.<br />
<br />
<br />
Update group click selection. If Ctrl is held down, then deselect clicked on group instead of drill in.<br />
<br />
Update ungroup - Fix bug where ungroup didn't go just one step when top level group selected.<br />
<br />
Update group copy to clipboard - fix copy to clipboard with group sub object selected<br />
<br />
Update groups window selection. Ctrl+window select was not deselecting the full group when there was no drill in, was only deselecting sub objects. Fixed so that Ctrl+window select targets entire group if no drill in selection. If there is any drill in then leaf nodes will still be targeted instead.<br />
<br />
Add Group label in object type indicator in properties panel.<br />
<br />
Update Scene Browser groups - If an object is inside of a selected group, make it count as selected for displaying selection dot in Types and Styles sections.<br />
<br />
Update detailed object properties dialog for groups - report number of group children.<br />
<br />
Fix bug with groups in detailed object properties dialog showing the style of group objects instead of the group's children and not listing the styles when there are multiple styles in the group.<br />
<br />
Update Project command group processing<br />
<br />
Update select all for groups<br />
<br />
Update moi.geometrydatabase.selectLoop() to work with groups<br />
<br />
Update invert selection for groups<br />
<br />
Fix bug with groups with edit points on. When group was selected, dragging on edit point didn't work, whole group was being dragged instead.<br />
<br />
Update Separate command, groups. Make objects being separated break out from groups.<br />
<br />
Fix bug where drag point on curve would break modified object out of groups.<br />
<br />
Fix problem with group handling for Flow command.<br />
<br />
Fix group bug with ArrayCurve - groups appeared to lose selection when entering path picking stage in ArrayCurve.<br />
<br />
Update scene browser styles for Groups. Tweak styles to not accumulate status for parent group objects, just the contents of the group.<br />
<br />
Update properties panel for groups. Fix assigning style of groups by the properties panel style menu was only setting group parent object style and not child objects.<br />
<br />
<br />
Update radial dimensions. When cross size is set to 0 to disable center point cross lines, don't include radius center point for window selection and bounding box framing. Fixes a bug reported on the forum by Martin here:<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=10652.86<br />
<br />
Update scene browser assigning style - don't modify object hidden or locked state to match existing object states when all current assigned objects were hidden or locked. Can be re-enabled in moi.ini by setting [Scene Browser] AssignStyleAssumeTargetState=y .<br />
<br />
Update object drag - Fix regression bug ctrl+drag not working to drag copies of edge or face brep sub objects<br />
<br />
Add Ctrl+tab shortcut key. Puts focus in XYZ input always, doesn't go to input fields in command ui area.<br />
<br />
Fix Chamfer regression - Fix Chamfer regression introduced in v4 when making chamfer surfaces to be analytic plane objects. Fix bug in analytic plane/plane intersection that was causing chamfer to fail when 2 chamfer planes intersected each other.<br />
<br />
Update DXF export. Don't mess with handle values of DimStyle entries already in the template file. Fixes AutoCAD generating an error when trying to copy objects to the clipboard after opening a DXF file from MoI. Fixes a bug reported by Tim on the forum here:<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=10683.1<br />
<br />
Update grid display - axis labels. Support custom axis labels for grid axis colors. Fixes bug reported in forum by Dinos here:<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=10652.61<br />
<br />
Update Windows installer. Add file association for SVG format and set file association information to be removed from registry on uninstall.<br />
<br />
Themes - Add Terminal Green theme.<br />
<br />
Update Theme UI reload. Fix crash bug when editing theme viewport brightness with MiniSidePane.js startup script. Fixes a crash reported through e-mail by James Elliott.<br />
<br />
Fix unicode text theme bug. After processing theme defines, prefix .htm loaded data with a UTF8 byte order mark so the html parser will handle it as UTF8 content. Fixes a bug with translated plugins reported through e-mail by Pilou.<br />
<br />
Update 3DM import from SpaceClaim. If a 3DM file comes from SpaceClaim, look for any faces that hae very large underlying surfaces and shrink those down. Fixes a 3DM import problem reported by Tolya Vozya on the forum at:<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=10664.1<br />
<br />
</div><br />
<br />
<br />
== Mar-28-2023 ==<br />
<br />
[http://moi3d.com/forum/index.php?webtag=MOI&msg=11034.1 Forum announcement]<br />
<br />
<div style="width: 700px"><br />
<br />
Initial integration of the ACIS geometry kernel into MoI, starting with fillets.<br />
<br />
Fillets are now being calculated by ACIS. Still a work in progress but many types of fillets that failed before are now working.<br />
<br />
You can switch back to the old fillets with the "Library" option in the fillet command options.<br />
<br />
<br />
New cross hatching option when generating a 2D drawing to PDF, AI, or SVG formats:<br />
<br />
http://moi3d.com/forum/get_attachment.php?webtag=MOI&amp;hash=a4026a78ed7b47e203db833bbeb80b69&amp;filename=cross_hatching.png<br />
<br />
<br />
Thumbnail images are now written in .3dm files and shell extensions for Mac and Windows are included in MoI so you can now see thumbnail images when browsing .3dm files in Windows File Explorer or macOS Finder.<br><br />
You can disable making embedded thumbnail images under Options &gt; 3DM options &gt; "Write thumbnail preview image" checkbox.<br><br />
There is a setting in moi.ini for thumbnail image size: [3DM] ThumbnailSize=256<br><br />
Can range from 64 to 1024<br />
<br />
<br />
Supported platforms are a little different now due to the ACIS integration - on Windows, Windows 7 SP1, 8.1, 10 and 11 64-bit are supported. Windows 7 without SP1 and Windows 8.0 are not supported. On Mac 10.14 and higher is supported.<br />
<br />
<br />
Scene browser assignment - now when you click on a name in the Scene Browser, a menu will pop up with options for "Assign selection here" or "Rename":<br />
http://moi3d.com/forum/get_attachment.php?webtag=MOI&hash=c8c6d42c789df309c9eaf33f3bbbc04c&filename=BrowserAssignMenu1.png http://moi3d.com/forum/get_attachment.php?webtag=MOI&hash=df2c653062a7c98f07ee291a591eab4b&filename=BrowserAssignMenu2.png<br />
<br />
<br />
Update group selection - Make Ctrl+click on an unselected object that is inside of a group drill in to select that object directly instead of any intermediate groups.<br />
<br />
<br />
Various minor bug fixes with a lot for groups.<br />
<br />
<br />
Update SubD import - rotate Y-Up to Z-Up. By default rotate FBX subd import from the FBX Y-up coordinate system to MoI's Z-up coordinate system.<br />
Can be disabled for both OBJ and FBX imports with a new setting under:<br><br />
Options &gt; Import/Export &gt; SubD import options &gt; "Rotate y-up to z-up OBJ" and "Rotate y-up to z-up OBJ" checkboxes.<br />
<br />
<br />
Update array curve with "align to surface" option<br><br />
Minimize the rotation applied to align to surface normal. Fixes a bug reported in the forum by Barry here:<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=10725.1<br />
<br />
Update projection view dropdown<br><br />
Add an option "Active" in addition to 3D / Top / Front / Right when choosing projection views, which will use the active viewport.<br><br />
Affects Make2D, Silhouette commands and also AI/PDF/SVG/DXF export.<br />
<br />
<br />
Fix SVG locale bug<br><br />
Don't use locale-aware string formatting for SVG attributes. Should not have comma values for decimal separator.<br />
<br />
<br />
Update windows installer<br><br />
Add checkbox to installer for "Create file associations", so that changing file associations can be disabled by the user.<br />
<br />
<br />
Update Rebuild command<br><br />
Add option for Endpoints mode,either Points: Interpolate or Points: CVs for making either an interpolated curve or a control points curve from the polyline endpoints. Requested on the forum by pafurijaz here:<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=10953.9<br />
<br />
Update command parameters<br><br />
if there is a parameter repeat=true then set the repeat command checkbox.<br />
<br />
Add moi.ini option for controlling what version of SketchUp SKP file to write:<br><br />
[SKP]<br><br />
SUModelVersion=Current<br><br />
Version can be: SU3-SU8, SU2013-SU2016 and on Mac up to SU2021<br />
<br />
<br />
Scripting:<br />
<br />
Update moi.geometryDatabase.getObjects() group handling. Return objects inside groups with moi.geometryDatabase.getObjects() for increased compatibility<br />
with existing scripts. Can pass getObjects( false ) to disable going into groups.<br />
<br />
Group traversal - add .getFirstNode() and .getNextNode( current_node ) functions on group objects. This will only traverse groups and any objects that are the immediate child of a group but not go into sub-objects like curve segments.<br />
<br />
Implement document user text for scripts<br><br />
New document user text values so scripts can add data that is saved and restored from 3DM files.<br><br />
New methods under moi.geometryDatabase:<br><br />
.setUserText( Key, Value ); - Set text value for given key.<br><br />
.getUserText( Key ); - Returns text value for given key, or undefined if not present.<br><br />
.removeUserText( Key ); - Remove user text value for given key.<br><br />
.getAllUserText(); - Return list of all user text, each object has .key and .value properties.<br><br />
.clearAllUserText(); - Clear all document user text.<br><br />
<br />
There is also now object user text available for scripts to store data on an object:<br><br />
.setUserText( Key, Value ); - Set text value for given key.<br><br />
.getUserText( Key ); - Returns text value for given key, or undefined if not present.<br><br />
.removeUserText( Key ); - Remove user text value for given key.<br><br />
.getAllUserText(); - Return list of all user text, each object has .key and .value properties.<br><br />
.clearAllUserText(); - Clear all object user text.<br><br />
<br />
Document user text can also be viewed and edited under File &gt; Notes &gt; "Document user text" button and object user text will show on the "Details..." object properties dialog.<br />
<br />
<br />
Add screenTol property to point stream picker so behavior can be modified from the default 5 pixels that the mouse has to travel before generating a new point for Sketch curve.<br><br />
Can set pointstreampicker.screenTol = 0.0 to take all points regardless of distance from previous point, or something like pointstreampicker.screenTol = 30.0; to make it sparser.<br />
<br />
<br />
Make MoiList and ObjectList implement .push() and .pop() methods with same behavior as JavaScript array.<br><br />
For push() the arguments are appended to the end of the list in the order in which they appear. The new length of the list is returned as the result of the call. The push() for ObjectList can take another ObjectList or JavaScript array and it will look through the contents to find objects.<br />
<br />
For pop() the last element of the list is removed from the list and returned. If the list is empty, returns undefined.<br />
<br />
<br />
Updated script function argument getter. Code that is looking for an ObjectList passed as a function argument will now accept a single object and automatically wrap it with a temporary object list, and also accept a JavaScript array object which it will convert into a temporary object list.<br />
<br />
<br />
Update background image scripting<br><br />
Add .getEmbeddedImage() function on background images that will return an image object, so that image.szve() can be called to extract an embedded background image out to a separate file again. Requested by Brian on the forum here:<br><br />
http://moi3d.com/forum/messages.php?webtag=MOI&msg=10813.4<br />
<br />
Update face scripting<br><br />
face.isCylinderSurface - true if the underlying surface for this face is a cylinder.<br><br />
face.isConeSurface - true if the underlying surface for this face is a cone.<br><br />
face.isSphereSurface - true if the underlying surface for this face is a sphere.<br><br />
face.analyticFrame - coordinate frame for a cylinder, cone, or sphere surface.<br><br />
face.analyticRadius - radius for a cylinder, cone, or sphere surface.<br><br />
face.analyticHeight - height for a cylinder or cone surface.<br><br />
<br />
Update cplane scripting<br><br />
Update moi.view.setCPlaneInteractive() - return false if canceled and take optional boolean parameter for allowing nested cancel.<br><br />
Add moi.command.isCanceled to allow a script to determine if the current running command has been canceled.<br><br />
Add moi.command.pendingCommandName<br><br />
Clear command repeat checkbox if a modal dialog has been shown.<br><br />
<br />
Update moi.ini scripting<br><br />
Add moi.settings.writeIniFile() which will flush the in-memory contents of moi.ini out to disk.<br><br />
Add moi.settings.getIniValue( 'Section name', 'Key name') which will return an ini value to the calling script or return undefined if not present.<br />
<br />
<br />
Make all Moi JS objects implement a .toString() function that will give back the individual class name instead of the same generic "MoiObj" name.<br><br />
So for example doing this on an object list:<br><br />
var objlist = moi.geometryDatabase.createObjectList();<br><br />
var name = objlist.toString();<br><br />
will now give back [object ObjectList], instead of [object MoiObj].<br />
<br />
Also MoI script objects can now enumerate object properties using for ... in syntax, like:<br><br />
for ( propname in obj )<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;var val = obj[ propname ];<br />
<br />
<br />
Update Pointpicker scripting<br><br />
Add pointpicker.screenpt - returns 2d mouse coordinates<br><br />
Add pointpicker.hitTestSnapPoints( Points ) - takes array of xyz point objects, returns index of one closest to the mouse and within object snap radius or -1 if none found.<br><br />
Helper function for implementing custom snap function as described here:<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=10917.2<br />
<br />
<br />
Add moi.filesystem.getDirName() - directory picker<br><br />
var dir = moi.filesystem.getDirName( 'Dialog caption', 'c:\\initpath' );<br><br />
returns empty string if canceled.<br />
<br />
Add object.setEditPointSelected( index, value ); on objects as a way to set the selection state of an edit point.<br />
<br />
Update scripting window position and size.<br><br />
If a script calls window.move(x,y) or window.resize(w,h) before the window has been loaded, record the given position or size and apply<br />
them when the window is finished loading.<br />
<br />
Update scripting - selection undo<br><br />
Add moi.geometryDatabase.saveSelectionUndo() and moi.geometryDatabase.setSelectionUndoRevision()<br><br />
so scripts can have selection undo set up for changes to selection/hidden/locked properties as described on the forum here:<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=10939.10<br />
<br />
Update scripting, annotation points and construction lines.<br><br />
Add method for creating a consruction line from script:<br><br />
moi.geometryDatabase.addConstructionLine( start, end, isTemporary );<br><br />
Add annotation.getPoints() which returns a list of the defining points for the annotation.<br />
<br />
Update point picker<br><br />
Add new properties to control pointpicker:<br><br />
pointpicker.dontMakeConstructionLines = true;<br><br />
pointpicker.finishOnMouseMove = true;<br><br />
Add pointpicker.disableGridSnap and pointstreampicker.disableGridSnap properties.<br />
<br />
</div></div>Michael Gibsonhttp://moi3d.com/wiki/index.php?title=V5Beta&diff=1061V5Beta2023-04-02T08:57:56Z<p>Michael Gibson: </p>
<hr />
<div><big>Release notes for each V5 beta release are gathered here.</big><br />
<br />
== Apr-10-2022 ==<br />
<br />
[http://moi3d.com/forum/index.php?webtag=MOI&msg=10652.1 Forum announcement]<br />
<br />
<div style="width: 700px">New stuff:<br />
<br />
Dark UI theme and theme editor available under Options &gt; General &gt; "UI Theme".<br />
<br />
Groups - create a group using the menu on the "Objects" section of the Scene Browser.<br />
<br />
Types section of the Scene Browser has additional sub types like "Types &gt; Curves &gt; Circles" can be used to target just curves that are circles.<br />
Sub types include:<br/><br />
&nbsp;&nbsp;&nbsp;&nbsp;Curves &gt; Open, Closed, Planar, Lines, Polylines, Circles, Arcs, Ellipses, Elliptical arcs<br/><br />
&nbsp;&nbsp;&nbsp;&nbsp;Surfaces &gt; Planar<br/><br />
&nbsp;&nbsp;&nbsp;&nbsp;Edges &gt; Joined, Naked<br/><br />
&nbsp;&nbsp;&nbsp;&nbsp;Properties &gt; Selected, Unselected, Locked, Unlocked, Visible, New objects.<br/><br />
<br />
Support for import/export to SVG format.<br />
<br />
SubD conversion now supports FBX format.<br />
<br />
The Mac version is now a universal binary that contains code for both Intel and M1 CPU architectures.<br />
<br />
Added File &gt; Notes button for setting text notes that are saved inside of a .3dm file.<br />
<br />
Scene browser - click on text label of an item in the Objects section of the scene browser to assign current selection to a name or group.<br />
<br />
Annotation text display engine performance - Hoist several Qt text layout calls up to layout time rather than calling at render time. Major improvement to render performance for text. Also if model units sized text is small on screen render as a textured quad instead of using text geometry.<br />
<br />
Scene browser - Add "Unnamed" entry under Objects to allow targeting of all objects without a name.<br />
<br />
Update STEP export - split closed surfaces Default is on, can be set in moi.ini under:<br/><br />
[STEP]<br/><br />
ExportSplitClosedSurfaces=n<br />
<br />
Update tab controls - Add dot to active tab.<br />
<br />
New rendering platforms - support for Direct3D9 on Windows and Metal on Mac. Can be set in moi.ini under [View] GraphicsAPI=Direct3D9 or GraphicsAPI=Metal . If you are having problems with a particular video driver you can try using one of these alternatives.<br />
<br />
Added experimental ViewProject command that transforms objects by a perspective projection.<br />
<br />
Support clipboard copy/paste of SVG format. To copy to the clipboard using SVG format, set up a shortcut key with this:<br/><br />
script: moi.geometryDatabase.copyToClipboardSVG();<br />
<br />
Update default render engine on Wine - Default to Direct3D11 on Wine instead of OpenGL. Wine seems to compensate for various driver bugs in its Direct3D layer.<br />
<br />
Update text rendering under Wine. Wine seems to have a bug in ID3D11DeviceContext::UpdateSubresource when it's being applied to an 8-bit luminance texture. When running under Wine use a 32-bit texture format for the text texture to avoid running into this.<br />
<br />
Fix Mac version bug where doing a double right click could get stuck in a loop if there was a file dialog being shown after the double right click happened.<br />
<br />
Fix crash bug in Extrude when extruding a curve with a large number of segments and with particular weight values. Fixes a bug reported by Scott Carson in e-mail.<br />
<br />
Fix boolean bug where edges that touched at singularity were being incorrectly merged in boolean union. Fixes a bug reported through e-mail by Christopher Schardt.<br />
<br />
Fix boolean problem with multi object booleans where tolerance settings were being handled slightly differently when many objects were being booleaned. This could sometimes yield different results when booleaning many objects at once instead of only 2 at a time. Fixes a boolean union bug reported through e-mail by Christopher Schardt.<br />
<br />
Update Mac trackpad/Magic Mouse handling. Give up trying to automatically figure out if a scroll message is coming from Magic Mouse or trackpad it does not appear to be possible to do this reliably. So make Magic Mouse scroll behave same as trackpad scroll, the moi.ini option for doing trackpad scroll as a wheel mouse ([MultiTouch] UseTrackpadScrollAsMouseWheel=y) can be used to get old behavior on Magic Mouse.<br />
Also holding down Alt while doing a trackpad scroll will instead do a wheel zoom now.<br />
There is also a new parameter to reverse scroll/pan: [MultiTouch] ReverseTrackpadScroll=y<br />
<br />
Updated Sweep 2 rails maintain height mode. If the the 2 rails start or end in a point don't disable "Maintain height" for the entire sweep, instead handle the scaling down to a point after the first or last proflie.<br />
<br />
Update background images - Add in moi.ini option to make background image embed turned on by default.<br/><br />
[View]<br/><br />
BackgroundImageEmbedDefault=y<br />
<br />
Update surface/surface intersection - Look for and remove duplicate intersection results. Fixes bug with multiple curve intersection results reported by Przemas in the forum here:<br/><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=10460.1<br />
<br />
Update chamfer command - swap. Add swap button when "Use 2 distances" is active. Requested on the forum by 3image here:<br/><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=10289.37<br />
<br />
Update mesh export vertex normal combining. Change vertex normal combining to use tolerance of 0.5 degrees instead of 3.0 degrees. It can also be changed now in moi.ini .<br/><br />
[Mesh Export]<br/><br />
UnifyVertexNormalsAngleToleranceDegrees=0.5<br />
<br />
Update background image properties dialog - add width/height fields. Requested by moritz on the forum here:<br/><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=10289.29<br />
<br />
Update text selection. Fix problem where text selection was lost when swiping a selection and releasing mouse button off of the UIPanel window.<br />
<br />
Update selection - multiple select. If multiple select only with shift key is enabled don't clear selection if ctrl is down so that Ctrl+drag will still work as a deselection window. Fixes bug reported on the forum by Viewbyte here:<br/><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=10439.3<br />
<br />
Update DXF import - fix LWPOLYLINE import 16 bit overflow crash bug reported through e-mail by Jörg Vollmer.<br />
<br />
Update curve drawing corners - Make the current active point in curve drawing be shown as a corner if ctrl is down. Previously it would only show as a corner after it was picked.<br />
<br />
Update STEP import - FACETED_BREP entities. v3 would read FACETED_BREP entities but this was lost in v4 with the restructuring to use multiple threads. Process these now, fixes v3/v4 regression reported on the forum by Martin here:<br/><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=10415.7<br />
<br />
Update Flow. Sew edges for flow result so a closed tube will have start/end edges joined to make a solid.<br />
<br />
Update ArcCenter command - int snap. Enable radial intersection snap point for ArcCenter command. Fixes a bug reported by Andre in the forum here:<br/><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=10399.1<br />
<br />
Fix transform regression. Fix regression where invalidating hit test map on selection change (change near the end of v4 beta) was causing transforms like object drag to regenerate the hit test map on every mousemove. Fixes a performance regression reported through e-mail by Massimo.<br />
<br />
Add option for grid opacity in moi.ini under [Grid] GridOpacity=255<br />
<br />
Update relative expressions. Add in percent relative expression, so you can put in 120% into a distance field to alter the current value.<br />
<br />
Fixes for running on Mac with case sensitive filesystem.<br />
<br />
Update Loft with loft style = straight. Loft with loft style = straight would generate longer faces in coplanar segments. Fixes bug reported by Ed Ferguson in the forum here:<br/><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=10160.1<br />
<br />
Update Merge command. Process curves with Merge command - will merge G1 segments together.<br />
<br />
Various other minor bug fixes.<br />
<br />
<br />
<b>Scripting:</b><br />
<br />
Updated FilesystemObjectModel::getFiles() - Added optional 3rd parameter to recurse subdirectories.<br />
<br />
Added annotationFrame property to annotation objects so that a script can get an annotation object's plane.<br />
<br />
Edit points scripting - Add scripting interface on objects for:<br/><br />
&nbsp;&nbsp;&nbsp;&nbsp;obj.hasEditPoints - read-only property true if object has edit points, false if not.<br/><br />
&nbsp;&nbsp;&nbsp;&nbsp;obj.hasSelectedEditPoints - read-only property true if object has any selected edit points.<br/><br />
&nbsp;&nbsp;&nbsp;&nbsp;obj.numEditPoints - read-only property for number of edit points.<br/><br />
&nbsp;&nbsp;&nbsp;&nbsp;obj.getEditPoint( index ) - method that returns an x,y,z point for the given edit point index.<br/><br />
&nbsp;&nbsp;&nbsp;&nbsp;obj.getEditPointSelected( index ) - method that returns true if the given edit point is selected.<br/><br />
Also fix bug show points not refreshing redraw properly when set through script rather than through the show points command.<br />
<br />
Added isEllipticalArc property for curves and curvesegments.<br />
<br />
Update viewport.interactiveViewChange(). Add optional 2nd parameter to viewport.interactiveViewChange() function to allow a script to use it in a modal fashion. Fix for Ed's script posted on the forum here:<br/><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=10403.1<br />
<br />
Update save file dialog handling. Allow initializing dialog with a directory name, like:<br/><br />
SaveAs c:\output\fbx<br/><br />
When given a directory name the dialog will start out in that directory.<br />
</div><br />
<br />
<br />
== May-22-2022 ==<br />
<br />
[http://moi3d.com/forum/index.php?webtag=MOI&msg=10706.1 Forum announcement]<br />
<br />
<div style="width: 700px">This release is primarily bug fixes for various aspects of groups.<br />
<br />
<br />
Update group click selection. If Ctrl is held down, then deselect clicked on group instead of drill in.<br />
<br />
Update ungroup - Fix bug where ungroup didn't go just one step when top level group selected.<br />
<br />
Update group copy to clipboard - fix copy to clipboard with group sub object selected<br />
<br />
Update groups window selection. Ctrl+window select was not deselecting the full group when there was no drill in, was only deselecting sub objects. Fixed so that Ctrl+window select targets entire group if no drill in selection. If there is any drill in then leaf nodes will still be targeted instead.<br />
<br />
Add Group label in object type indicator in properties panel.<br />
<br />
Update Scene Browser groups - If an object is inside of a selected group, make it count as selected for displaying selection dot in Types and Styles sections.<br />
<br />
Update detailed object properties dialog for groups - report number of group children.<br />
<br />
Fix bug with groups in detailed object properties dialog showing the style of group objects instead of the group's children and not listing the styles when there are multiple styles in the group.<br />
<br />
Update Project command group processing<br />
<br />
Update select all for groups<br />
<br />
Update moi.geometrydatabase.selectLoop() to work with groups<br />
<br />
Update invert selection for groups<br />
<br />
Fix bug with groups with edit points on. When group was selected, dragging on edit point didn't work, whole group was being dragged instead.<br />
<br />
Update Separate command, groups. Make objects being separated break out from groups.<br />
<br />
Fix bug where drag point on curve would break modified object out of groups.<br />
<br />
Fix problem with group handling for Flow command.<br />
<br />
Fix group bug with ArrayCurve - groups appeared to lose selection when entering path picking stage in ArrayCurve.<br />
<br />
Update scene browser styles for Groups. Tweak styles to not accumulate status for parent group objects, just the contents of the group.<br />
<br />
Update properties panel for groups. Fix assigning style of groups by the properties panel style menu was only setting group parent object style and not child objects.<br />
<br />
<br />
Update radial dimensions. When cross size is set to 0 to disable center point cross lines, don't include radius center point for window selection and bounding box framing. Fixes a bug reported on the forum by Martin here:<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=10652.86<br />
<br />
Update scene browser assigning style - don't modify object hidden or locked state to match existing object states when all current assigned objects were hidden or locked. Can be re-enabled in moi.ini by setting [Scene Browser] AssignStyleAssumeTargetState=y .<br />
<br />
Update object drag - Fix regression bug ctrl+drag not working to drag copies of edge or face brep sub objects<br />
<br />
Add Ctrl+tab shortcut key. Puts focus in XYZ input always, doesn't go to input fields in command ui area.<br />
<br />
Fix Chamfer regression - Fix Chamfer regression introduced in v4 when making chamfer surfaces to be analytic plane objects. Fix bug in analytic plane/plane intersection that was causing chamfer to fail when 2 chamfer planes intersected each other.<br />
<br />
Update DXF export. Don't mess with handle values of DimStyle entries already in the template file. Fixes AutoCAD generating an error when trying to copy objects to the clipboard after opening a DXF file from MoI. Fixes a bug reported by Tim on the forum here:<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=10683.1<br />
<br />
Update grid display - axis labels. Support custom axis labels for grid axis colors. Fixes bug reported in forum by Dinos here:<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=10652.61<br />
<br />
Update Windows installer. Add file association for SVG format and set file association information to be removed from registry on uninstall.<br />
<br />
Themes - Add Terminal Green theme.<br />
<br />
Update Theme UI reload. Fix crash bug when editing theme viewport brightness with MiniSidePane.js startup script. Fixes a crash reported through e-mail by James Elliott.<br />
<br />
Fix unicode text theme bug. After processing theme defines, prefix .htm loaded data with a UTF8 byte order mark so the html parser will handle it as UTF8 content. Fixes a bug with translated plugins reported through e-mail by Pilou.<br />
<br />
Update 3DM import from SpaceClaim. If a 3DM file comes from SpaceClaim, look for any faces that hae very large underlying surfaces and shrink those down. Fixes a 3DM import problem reported by Tolya Vozya on the forum at:<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=10664.1<br />
<br />
</div><br />
<br />
<br />
== Mar-28-2023 ==<br />
<br />
[http://moi3d.com/forum/index.php?webtag=MOI&msg=11034.1 Forum announcement]<br />
<br />
<div style="width: 700px"><br />
<br />
Initial integration of the ACIS geometry kernel into MoI, starting with fillets.<br />
<br />
Fillets are now being calculated by ACIS. Still a work in progress but many types of fillets that failed before are now working.<br />
<br />
You can switch back to the old fillets with the "Library" option in the fillet command options.<br />
<br />
<br />
New cross hatching option when generating a 2D drawing to PDF, AI, or SVG formats:<br />
<br />
http://moi3d.com/forum/get_attachment.php?webtag=MOI&amp;hash=a4026a78ed7b47e203db833bbeb80b69&amp;filename=cross_hatching.png<br />
<br />
<br />
Thumbnail images are now written in .3dm files and shell extensions for Mac and Windows are included in MoI so you can now see thumbnail images when browsing .3dm files in Windows File Explorer or macOS Finder.<br><br />
You can disable making embedded thumbnail images under Options &gt; 3DM options &gt; "Write thumbnail preview image" checkbox.<br><br />
There is a setting in moi.ini for thumbnail image size: [3DM] ThumbnailSize=256<br><br />
Can range from 64 to 1024<br />
<br />
<br />
Supported platforms are a little different now due to the ACIS integration - on Windows, Windows 7 SP1, 8.1, 10 and 11 64-bit are supported. Windows 7 without SP1 and Windows 8.0 are not supported. On Mac 10.14 and higher is supported.<br />
<br />
<br />
Scene browser assignment - now when you click on a name in the Scene Browser, a menu will pop up with options for "Assign selection here" or "Rename":<br />
http://moi3d.com/forum/get_attachment.php?webtag=MOI&hash=c8c6d42c789df309c9eaf33f3bbbc04c&filename=BrowserAssignMenu1.png http://moi3d.com/forum/get_attachment.php?webtag=MOI&hash=df2c653062a7c98f07ee291a591eab4b&filename=BrowserAssignMenu2.png<br />
<br />
<br />
Update group selection - Make Ctrl+click on an unselected object that is inside of a group drill in to select that object directly instead of any intermediate groups.<br />
<br />
<br />
Various minor bug fixes with a lot for groups.<br />
<br />
<br />
Update SubD import - rotate Y-Up to Z-Up. By default rotate FBX subd import from the FBX Y-up coordinate system to MoI's Z-up coordinate system.<br />
Can be disabled for both OBJ and FBX imports with a new setting under:<br><br />
Options &gt; Import/Export &gt; SubD import options &gt; "Rotate y-up to z-up OBJ" and "Rotate y-up to z-up OBJ" checkboxes.<br />
<br />
<br />
Update array curve with "align to surface" option<br><br />
Minimize the rotation applied to align to surface normal. Fixes a bug reported in the forum by Barry here:<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=10725.1<br />
<br />
Update projection view dropdown<br><br />
Add an option "Active" in addition to 3D / Top / Front / Right when choosing projection views, which will use the active viewport.<br><br />
Affects Make2D, Silhouette commands and also AI/PDF/SVG/DXF export.<br />
<br />
<br />
Fix SVG locale bug<br><br />
Don't use locale-aware string formatting for SVG attributes. Should not have comma values for decimal separator.<br />
<br />
<br />
Update windows installer<br><br />
Add checkbox to installer for "Create file associations", so that changing file associations can be didsabled by the user.<br />
<br />
<br />
Update Rebuild command<br><br />
Add option for Endpoints mode,either Points: Interpolate or Points: CVs for making either an interpolated curve or a control points curve from the polyline endpoints. Requested on the forum by pafurijaz here:<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=10953.9<br />
<br />
Update command parameters<br><br />
if there is a parameter repeat=true then set the repeat command checkbox.<br />
<br />
Add moi.ini option for controlling what version of SketchUp SKP file to write:<br><br />
[SKP]<br><br />
SUModelVersion=Current<br><br />
Version can be: SU3-SU8, SU2013-SU2016 and on Mac up to SU2021<br />
<br />
<br />
Scripting:<br />
<br />
Update moi.geometryDatabase.getObjects() group handling. Return objects inside groups with moi.geometryDatabase.getObjects() for increased compatibility<br />
with existing scripts. Can pass getObjects( false ) to disable going into groups.<br />
<br />
Group traversal - add .getFirstNode() and .getNextNode( current_node ) functions on group objects. This will only traverse groups and any objects that are the immediate child of a group but not go into sub-objects like curve segments.<br />
<br />
Implement document user text for scripts<br><br />
New document user text values so scripts can add data that is saved and restored from 3DM files.<br><br />
New methods under moi.geometryDatabase:<br><br />
.setUserText( Key, Value ); - Set text value for given key.<br><br />
.getUserText( Key ); - Returns text value for given key, or undefined if not present.<br><br />
.removeUserText( Key ); - Remove user text value for given key.<br><br />
.getAllUserText(); - Return list of all user text, each object has .key and .value properties.<br><br />
.clearAllUserText(); - Clear all document user text.<br><br />
<br />
There is also now object user text available for scripts to store data on an object:<br><br />
.setUserText( Key, Value ); - Set text value for given key.<br><br />
.getUserText( Key ); - Returns text value for given key, or undefined if not present.<br><br />
.removeUserText( Key ); - Remove user text value for given key.<br><br />
.getAllUserText(); - Return list of all user text, each object has .key and .value properties.<br><br />
.clearAllUserText(); - Clear all object user text.<br><br />
<br />
Document user text can also be viewed and edited under File &gt; Notes &gt; "Document user text" button and object user text will show on the "Details..." object properties dialog.<br />
<br />
<br />
Add screenTol property to point stream picker so behavior can be modified from the default 5 pixels that the mouse has to travel before generating a new point for Sketch curve.<br><br />
Can set pointstreampicker.screenTol = 0.0 to take all points regardless of distance from previous point, or something like pointstreampicker.screenTol = 30.0; to make it sparser.<br />
<br />
<br />
Make MoiList and ObjectList implement .push() and .pop() methods with same behavior as JavaScript array.<br><br />
For push() the arguments are appended to the end of the list in the order in which they appear. The new length of the list is returned as the result of the call. The push() for ObjectList can take another ObjectList or JavaScript array and it will look through the contents to find objects.<br />
<br />
For pop() the last element of the list is removed from the list and returned. If the list is empty, returns undefined.<br />
<br />
<br />
Updated script function argument getter. Code that is looking for an ObjectList passed as a function argument will now accept a single object and automatically wrap it with a temporary object list, and also accept a JavaScript array object which it will convert into a temporary object list.<br />
<br />
<br />
Update background image scripting<br><br />
Add .getEmbeddedImage() function on background images that will return an image object, so that image.szve() can be called to extract an embedded background image out to a separate file again. Requested by Brian on the forum here:<br><br />
http://moi3d.com/forum/messages.php?webtag=MOI&msg=10813.4<br />
<br />
Update face scripting<br><br />
face.isCylinderSurface - true if the underlying surface for this face is a cylinder.<br><br />
face.isConeSurface - true if the underlying surface for this face is a cone.<br><br />
face.isSphereSurface - true if the underlying surface for this face is a sphere.<br><br />
face.analyticFrame - coordinate frame for a cylinder, cone, or sphere surface.<br><br />
face.analyticRadius - radius for a cylinder, cone, or sphere surface.<br><br />
face.analyticHeight - height for a cylinder or cone surface.<br><br />
<br />
Update cplane scripting<br><br />
Update moi.view.setCPlaneInteractive() - return false if canceled and take optional boolean parameter for allowing nested cancel.<br><br />
Add moi.command.isCanceled to allow a script to determine if the current running command has been canceled.<br><br />
Add moi.command.pendingCommandName<br><br />
Clear command repeat checkbox if a modal dialog has been shown.<br><br />
<br />
Update moi.ini scripting<br><br />
Add moi.settings.writeIniFile() which will flush the in-memory contents of moi.ini out to disk.<br><br />
Add moi.settings.getIniValue( 'Section name', 'Key name') which will return an ini value to the calling script or return undefined if not present.<br />
<br />
<br />
Make all Moi JS objects implement a .toString() function that will give back the individual class name instead of the same generic "MoiObj" name.<br><br />
So for example doing this on an object list:<br><br />
var objlist = moi.geometryDatabase.createObjectList();<br><br />
var name = objlist.toString();<br><br />
will now give back [object ObjectList], instead of [object MoiObj].<br />
<br />
Also MoI script objects can now enumerate object properties using for ... in syntax, like:<br><br />
for ( propname in obj )<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;var val = obj[ propname ];<br />
<br />
<br />
Update Pointpicker scripting<br><br />
Add pointpicker.screenpt - returns 2d mouse coordinates<br><br />
Add pointpicker.hitTestSnapPoints( Points ) - takes array of xyz point objects, returns index of one closest to the mouse and within object snap radius or -1 if none found.<br><br />
Helper function for implementing custom snap function as described here:<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=10917.2<br />
<br />
<br />
Add moi.filesystem.getDirName() - directory picker<br><br />
var dir = moi.filesystem.getDirName( 'Dialog caption', 'c:\\initpath' );<br><br />
returns empty string if canceled.<br />
<br />
Add object.setEditPointSelected( index, value ); on objects as a way to set the selection state of an edit point.<br />
<br />
Update scripting window position and size.<br><br />
If a script calls window.move(x,y) or window.resize(w,h) before the window has been loaded, record the given position or size and apply<br />
them when the window is finished loading.<br />
<br />
Update scripting - selection undo<br><br />
Add moi.geometryDatabase.saveSelectionUndo() and moi.geometryDatabase.setSelectionUndoRevision()<br><br />
so scripts can have selection undo set up for changes to selection/hidden/locked properties as described on the forum here:<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=10939.10<br />
<br />
Update scripting, annotation points and construction lines.<br><br />
Add method for creating a consruction line from script:<br><br />
moi.geometryDatabase.addConstructionLine( start, end, isTemporary );<br><br />
Add annotation.getPoints() which returns a list of the defining points for the annotation.<br />
<br />
Update point picker<br><br />
Add new properties to control pointpicker:<br><br />
pointpicker.dontMakeConstructionLines = true;<br><br />
pointpicker.finishOnMouseMove = true;<br><br />
Add pointpicker.disableGridSnap and pointstreampicker.disableGridSnap properties.<br />
<br />
</div></div>Michael Gibsonhttp://moi3d.com/wiki/index.php?title=Scripting&diff=1035Scripting2023-01-24T02:28:48Z<p>Michael Gibson: </p>
<hr />
<div>This can be a place to collect information about scripting in MoI.<br />
<br />
There isn't any official documentation available for scripting (there probably won't be for quite a while yet), but you can download the [http://moi3d.com/forum/get_attachment.php?webtag=MOI&hash=2bf297a1a2b667929e93a23d8805271c&filename=moi.idl moi.idl file] which contains a list of all interfaces available to scripts and their properties and methods.<br />
<br />
In addition, the following community provided resources are available:<br />
<br />
;[http://kyticka.webzdarma.cz/3d/moi/ Petr's MoI Page]<br />
:An extensive collection of MoI scripts.<br />
<br />
[http://moi3d.com/forum/index.php?webtag=MOI&msg=6546.1 Some other documentation available on this forum thread]<br />
<br />
[http://moi3d.com/forum/index.php?webtag=MOI&msg=6727.2 See here for info on disabling file caching so commands will reload on every run]<br />
<br />
[http://moi3d.com/forum/index.php?webtag=MOI&msg=7238.1 Scripting discussion thread on the forum]<br />
<br />
[http://moi.maxsm.net/api Max's mirror of Dave Morrill's script documentation]<br />
<br />
[http://moi3d.com/forum/index.php?webtag=MOI&msg=10720.5 Burr's snapshot of Dave Morrill's script documentation]<br />
<br />
[https://github.com/ctkjose/moi3d Some scripting information collected by Jose Cuevas]</div>Michael Gibsonhttp://moi3d.com/wiki/index.php?title=MaxScriptArchive&diff=1034MaxScriptArchive2022-08-16T02:16:26Z<p>Michael Gibson: </p>
<hr />
<div><big>Mirror of Max Smirnov's MoI scripts, distributed under MIT license</big><br />
<br />
CustomUI:<br />
<div>[https://moi3d.com/download/scripts/max/CustomUI.2.0.beta2.zip CustomUI.2.0.beta2.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/CustomUI.1.03.win.mac.zip CustomUI.1.03.win.mac.zip]</div><br />
<br><br />
Scripts:<br />
<div>[https://moi3d.com/download/scripts/max/Voronoi.v.1.11.2018.03.09.zip Voronoi.v.1.11.2018.03.09.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/RasterImage.v.0.5.2018.02.25(MoI.v4).zip RasterImage.v.0.5.2018.02.25(MoI.v4).zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/Heightmap.v.0.8.2018.02.24(MoI.v4).zip Heightmap.v.0.8.2018.02.24(MoI.v4).zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/Dimensions.v.1.1.2018.02.24.zip Dimensions.v.1.1.2018.02.24.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/NutsAndBolts.v.0.96.2015.06.22.zip NutsAndBolts.v.0.96.2015.06.22.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/cMorph.v.1.1.2014.01.19.zip cMorph.v.1.1.2014.01.19.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/Cloth.v.0.97.2017.11.23.zip Cloth.v.0.97.2017.11.23.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/FxGraph3D.v.1.1.2016.04.17.zip FxGraph3D.v.1.1.2016.04.17.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/FatLines.v.0.6.2017.11.17.zip FatLines.v.0.6.2017.11.17.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/sSplit.v.0.95.2015.08.10.zip sSplit.v.0.95.2015.08.10.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/sBridge.v.0.71.2015.03.26.zip sBridge.v.0.71.2015.03.26.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/Gear.v.1.0.2014.09.26.zip Gear.v.1.0.2014.09.26.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/Wire.v.1.0.2017.02.16.zip Wire.v.1.0.2017.02.16.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/FxGraph.v.1.2e.2016.04.17.zip FxGraph.v.1.2e.2016.04.17.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/RadialPattern.v.1.3.2015.12.13.zip RadialPattern.v.1.3.2015.12.13.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/Subdiv_beta9.zip Subdiv_beta9.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/CVolume.v.3.0.2022.05.24.zip CVolume.v.3.0.2022.05.24.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/ImportObj.v.1.5.2015.09.10.zip ImportObj.v.1.5.2015.09.10.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/DelCorners.v.1.0.2015.09.09.zip DelCorners.v.1.0.2015.09.09.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/Array3D.v.0.7.2015.09.04.zip Array3D.v.0.7.2015.09.04.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/PointsOnCurve.1.2b.2013.11.15.zip PointsOnCurve.1.2b.2013.11.15.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/sScale.v.0.6.2015.03.28.zip sScale.v.0.6.2015.03.28.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/SubdivBeta.v.6.1.2015.03.05.zip SubdivBeta.v.6.1.2015.03.05.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/vSpray.v.1.1.2014.01.27.zip vSpray.v.1.1.2014.01.27.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/vSeed.v.1.2.2014.02.05.zip vSeed.v.1.2.2014.02.05.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/vOrientFast.v.1.0.2014.01.28.zip vOrientFast.v.1.0.2014.01.28.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/vOrient.v.1.0.2014.01.28.zip vOrient.v.1.0.2014.01.28.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/vDrop.v.1.0.2014.01.28.zip vDrop.v.1.0.2014.01.28.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/vClone.v.1.0.2014.01.26.zip vClone.v.1.0.2014.01.26.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/SaveInstances.v.1.0.2014.11.05.zip SaveInstances.v.1.0.2014.11.05.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/Starmap.v.0.45.2015.08.23.zip Starmap.v.0.45.2015.08.23.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/MultiIsoPlus.v.1.0.2015.01.18.zip MultiIsoPlus.v.1.0.2015.01.18.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/Heightmap.v.0.6.2015.08.20.zip Heightmap.v.0.6.2015.08.20.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/Cycles.v.1.0.1.2015.03.15.zip Cycles.v.1.0.1.2015.03.15.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/cyclicPoly.v.0.5.2015.05.23.zip cyclicPoly.v.0.5.2015.05.23.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/Subdiv_beta6.1.zip Subdiv_beta6.1.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/SubdivClassic.v.0.6.2015.02.22.zip SubdivClassic.v.0.6.2015.02.22.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/deCasteljau.v.1.0.2015.01.21.zip deCasteljau.v.1.0.2015.01.21.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/RandomCurves.v.1.0.2014.01.25.zip RandomCurves.v.1.0.2014.01.25.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/PatternSelection.v.0.3.2014.02.20.zip PatternSelection.v.0.3.2014.02.20.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/DistortCurves.v.1.0.2014.11.04.zip DistortCurves.v.1.0.2014.11.04.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/SpherePointsPlus.v.1.1.2014.10.23.zip SpherePointsPlus.v.1.1.2014.10.23.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/RandomStyles.v.0.9.2014.01.17.zip RandomStyles.v.0.9.2014.01.17.zip]</div><br />
<br />
<br><br />
<div>[https://web.archive.org/web/20201105115049/http://moi.maxsm.net/ Max's site snapshot on Internet Archive]</div></div>Michael Gibsonhttp://moi3d.com/wiki/index.php?title=Resources&diff=1033Resources2022-08-16T01:05:30Z<p>Michael Gibson: </p>
<hr />
<div>__NOTOC__<br />
===Links to useful MoI information on the web &nbsp;&nbsp;&nbsp;([[File:fr_flag.png]] [[Resources_%28french%29|French]])===<br />
<br />
<br />
{| style=" width: 80%; border-spacing: 10px; border: 0px; text-align: left; margin-left: auto; margin-right: auto;vertical-align:top;"<br />
|+ <br />
| <b>MOI's site links</b> || <b>External links</b><br />
|- style="vertical-align:top;"<br />
| <br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://moi3d.com MoI home page]<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://moi3d.com/forum MoI discussion forum] <br />
<br />
[[File:Img_wiki_homepage.png|25px]] [[FAQ|Frequently Asked Questions]] <br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://moi3d.com/4.0/docs/moi_help.htm MoI help file online] <br />
([[File:fr_flag.png]][http://moi3d.com/4.0/docs/moi_help_French.htm French]) ([[File:de_flag.png]] [http://moi3d.com/2.0/docs/moi_help_German.htm German]) ([[File:es_flag.png]] [http://moi3d.com/2.0/docs/moi_help_Spanish.htm Spanish]) ([[File:it_flag.png]] [http://moi3d.com/1.0/docs/moi_help_Italian.htm Italian])<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [[Shortcut Keys]]<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [[Hidden Secrets]]<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [[Scripting]] <br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://moi3d.com/forum/index.php?webtag=MOI&msg=7841.6 Burr's script archive - collection of scripts posted on the forum]<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [[V4Beta|V4 Beta release notes]]<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [[Nodeeditor|Node editor plugin]]<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://moi3d.com/4.0/EULA_retail.rtf MoI End User License Agreement]<br />
<br />
| <br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://kyticka.webzdarma.cz/3d/moi/ Petr's MoI page], a variety of informations including scripts and custom commands. ([[File:fr_flag.png]][http://moiscript.weebly.com/ French version])<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [[MaxScriptArchive|Max Smirnov's MoI scripts]] ([[File:fr_flag.png]][http://moiscript.weebly.com/ French version])<br />
<br />
|}<br />
<br />
{| style=" width: 80%; border-spacing: 10px; border: 0px; text-align: left; margin-left: auto; margin-right: auto;vertical-align:top;"<br />
|+ <br />
| <b>Language packs:</b><br />
|- style="vertical-align:top;"<br />
|[[File:fr_flag.png]] [http://moi3d.com/4.0/docs/moi_help_French.zip French v4 update]<br />
<br />
[[File:es_flag.png]] [http://moi3d.com/2.0/docs/v2_Spanish_update.zip Spanish v2 update]&nbsp;&nbsp;<br />
<br />
[[File:it_flag.png]] [http://moi3d.com/1.0/docs/Italian_language_pack.zip Italian UI and help file]&nbsp;&nbsp;<br />
|<br />
[[File:fr_flag.png]] [http://moi3d.com/2.0/docs/french_command_reference_update.zip French v2 update]&nbsp;&nbsp;<br />
<br />
[[File:de_flag.png]] [http://moi3d.com/2.0/docs/v2_German_update.zip German v2 update]&nbsp;&nbsp;<br />
|}<br />
<br />
== Tutorials ==<br />
{| style=" width: 80%; border-spacing: 10px; border: 0px; text-align: left; margin-left: auto; margin-right: auto;vertical-align:top;"<br />
|+ <br />
| <br />
|- style="vertical-align:top;"<br />
|<br />
[[File:Img_wiki_homepage.png|25px]] [http://moi3d.com/3.0/docs/tutorials.htm MoI documentation video tutorials]<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [https://gumroad.com/l/vavRq MoI Basics video tutorial ]by Bojan Koturanović - 7 hours $25 on Gumroad<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [https://www.youtube.com/playlist?list=PLu-75I3Zd8NS0AH3O75nOuerVz9O1rTUI Tutorials on YouTube ]by Liminal4D<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://moi3d.com/forum/index.php?webtag=MOI&msg=9816.1 48 German language video tutorials ] [[File:de_flag.png]] by Stefan Schneller on jewelry design<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://moi3d.com/download/Moi3d-Overview.pdf Introduction and overview PDF ]by Fabien Franzen<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://moi3d.com/forum/index.php?webtag=MOI&msg=7389.1 Sub-d car modeling in MoI ]by Ed Ferguson<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://moi3d.com/forum/index.php?webtag=MOI&msg=9899.1 Custom truck tutorial ]by Ed Ferguson<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://www.k4icy.com/tutorials.html Tutorials] by Mike Maynard, ( [[File:fr_flag.png]] [http://moiscript.weebly.com/ 18 of them in French ] by Pilou)<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://moi3d.com/forum/index.php?webtag=MOI&msg=284.1 Ring tutorial] by Jesse Kaufman, and [http://moi3d.com/forum/index.php?webtag=MOI&msg=510.5 #2], [http://moi3d.com/forum/index.php?webtag=MOI&msg=623.1 #3], <br />
[http://moi3d.com/forum/index.php?webtag=MOI&msg=556.1 #4],<br />
[http://moi3d.com/forum/index.php?webtag=MOI&msg=538.6 #5],<br />
[http://moi3d.com/forum/index.php?webtag=MOI&msg=536.1 #6]<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://moi3d.com/forum/index.php?webtag=MOI&msg=1175.3 Simple ring using rail revolve], <br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://moi3d.com/forum/index.php?webtag=MOI&msg=1175.5 Simple ring using sweep + scaling rail for more control]<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://moi3d.com/forum/index.php?webtag=MOI&msg=1057.1 Product design forums modeling challenges] <br />
<small>(not specific to MoI but useful for general CAD modeling strategy).</small><br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://moi3d.com/forum/index.php?webtag=MOI&msg=606.4 Simple Intarsia type design]<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://moi3d.com/forum/index.php?webtag=MOI&msg=1171.2 Creating a 3-toed base foot]<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://vimeo.com/30168354 Flow workflow video ]from danperk<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://3dcncguitars.com/ Tutorials for guitar modeling in MoI and Rhino and CNC production]<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://moi3d.com/forum/index.php?webtag=MOI&msg=8845.16 Car modeling techniques] by Zarkow, and [http://moi3d.com/forum/index.php?webtag=MOI&msg=8845.5 #2] and [http://moi3d.com/forum/index.php?webtag=MOI&msg=9956.1 video tutorials]<br />
<br />
<br />
<br />
|<br />
[[File:Img_wiki_homepage.png|25px]] [https://gumroad.com/l/fGqqS MoI for Game Assets video tutorial] by Arrimus 3D - 5 hours $9.99 on Gumroad<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://moiusers.blogspot.com/ Introductory videos ]by Tom Meeks - videos with narration covering a lot of basics.<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://moi3d.com/forum/index.php?webtag=MOI&msg=6058.1 Videos from Andrei Samardac]<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://moi3d.com/forum/index.php?webtag=MOI&msg=3842.1 Video on modeling a SpacePilot controller] from lyes <br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://vimeo.com/channels/moi3d Vimeo channel with tutorials] from lyes<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://bitreality.blogspot.com/ Joe's classical column video tutorials]<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://moi3d.com/forum/index.php?webtag=MOI&msg=402.9 Japanese bathtub tutorial]<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://moi3d.com/forum/index.php?webtag=MOI&msg=446.17 Object repair tutorial]<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://moi3d.com/forum/index.php?webtag=MOI&msg=2546.1 Ferrari 599 GTB tutorial videos ]by lyes<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://moi3d.com/forum/index.php?webtag=MOI&msg=2429.1 Snowman figure ]by PaQ<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://cid-30cffdfa97399495.skydrive.live.com/self.aspx/.Public/Accurate|_Tapers|_MoI|_V2.zip Accurate tapers using Expressions] by Danny <br />
<small>(Not really needed since Extrude now has a taper function good if you want to learn basic trig) D.T.</small><br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://moi3d.com/forum/index.php?webtag=MOI&msg=3814.1 Discussions on ship hull techniques]<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://moiscript.weebly.com/ Videos: Functions of the Manual] by Pilou ( [[File:fr_flag.png]] in French)<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://vimeo.com/30765016 Making accurate screw threads video] from OSTexo<br />
<br />
[[File:Img_wiki_homepage.png|25px]] Scooter tutorial from Mauro:&nbsp;&nbsp;&nbsp;&nbsp;[https://www.youtube.com/channel/UCq79CeWFi9yOjkXxYjF7n4A YouTube channel]&nbsp;&nbsp;&nbsp;&nbsp;[http://moi3d.com/forum/index.php?webtag=MOI&msg=9790.1 Forum post]<br />
<br />
|}<br />
<br />
== Helper programs ==<br />
Some standalone small programs to help accomplish specific tasks.<br />
<br />
=== Rhino6/7 3DM file format to Rhino5 3DM file format (MOI3D compatible) converter ===<br />
[https://moi3d.com/download/Convert3DMToRhinoV5_win.zip Download Convert3DMToRhinoV5 converter for Windows]<br />
<br />
[https://moi3d.com/download/Convert3DMToRhinoV5_mac.zip Download Convert3DMToRhinoV5 converter for Mac]<br />
<br />
<br />
=== Obj23dmWireframe converter ===<br />
[https://moi3d.com/download/Obj23dmWireframe.zip Download Obj23dmWireframe converter for Windows]<br />
<br />
[https://moi3d.com/download/Obj23dmWireframe.app.zip Download Obj23dmWireframe converter for Mac]<br />
<br />
This enables bringing polygon data in an .obj file into MoI to use as a construction guide.<br />
Unzip it to some folder, and then you can run the Obj23dmWireframe.exe program. It will prompt you for the name of an .obj file to read, and after that the name of a .3dm file to create. It will read all the polygon data from the obj file and convert the edges of polygons into line segments, and then write those line segments to the 3dm file. You can then load that 3dm file into MoI and use those line segments to snap on to. Originally posted on the forum [http://moi3d.com/forum/index.php?webtag=MOI&msg=1099.1 here].<br />
<br />
=== MergeOBJ utility ===<br />
[http://moi3d.com/download/MergeOBJ.exe Download MergeOBJ utility]<br />
<br />
This utility program can combine several input OBJ files into one single OBJ file. This may be useful if you want to build up a set of different OBJ files possibly by exporting pieces with different mesh settings, and then combine them into one OBJ file if your target program wants to work with only a single file. This was created because the freely available mesh editing tools have a tendency to remove vertex normals when combining files together, this utility will preserve vertex normals. Announced on the forum [http://moi3d.com/forum/index.php?webtag=MOI&msg=3570.12 here].<br />
<br />
=== Old utilities ===<br />
[http://moi3d.com/download/3dmCurves2DXF.zip 3dmCurves2DXF converter] - This could convert curves in a 3DM file to a DXF file to be used for CAM programs. It's not needed anymore since MoI v3 now directly supports DXF file export.<br><br><br />
These utilities were to help with MoI v1 which did not export material assignments to OBJ files. Since MoI v2 can control material assignments by assigning Styles, these are no longer necessary but are still included here for v1 users.<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;[http://moi3d.com/download/SeparateOBJ.zip SeparateOBJ editor] - Breaks an OBJ file exported from MoI v1 into smaller pieces and puts separate material assignments on each piece for import into programs that require that.<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;[http://moi3d.com/download/MergeOBJ_old.zip MergeOBJ editor (old version)] - Edits an OBJ file to combine all the different objects in it into one single object so there will be just one material for the whole thing.</div>Michael Gibsonhttp://moi3d.com/wiki/index.php?title=MaxScriptArchive&diff=1032MaxScriptArchive2022-08-16T00:57:05Z<p>Michael Gibson: </p>
<hr />
<div><big>Mirror of Max Smirnov's MoI scripts, distributed under MIT license</big><br />
<br />
Scripts:<br />
<div>[https://moi3d.com/download/scripts/max/Voronoi.v.1.11.2018.03.09.zip Voronoi.v.1.11.2018.03.09.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/RasterImage.v.0.5.2018.02.25(MoI.v4).zip RasterImage.v.0.5.2018.02.25(MoI.v4).zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/Heightmap.v.0.8.2018.02.24(MoI.v4).zip Heightmap.v.0.8.2018.02.24(MoI.v4).zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/Dimensions.v.1.1.2018.02.24.zip Dimensions.v.1.1.2018.02.24.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/NutsAndBolts.v.0.96.2015.06.22.zip NutsAndBolts.v.0.96.2015.06.22.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/cMorph.v.1.1.2014.01.19.zip cMorph.v.1.1.2014.01.19.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/Cloth.v.0.97.2017.11.23.zip Cloth.v.0.97.2017.11.23.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/FxGraph3D.v.1.1.2016.04.17.zip FxGraph3D.v.1.1.2016.04.17.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/FatLines.v.0.6.2017.11.17.zip FatLines.v.0.6.2017.11.17.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/sSplit.v.0.95.2015.08.10.zip sSplit.v.0.95.2015.08.10.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/sBridge.v.0.71.2015.03.26.zip sBridge.v.0.71.2015.03.26.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/Gear.v.1.0.2014.09.26.zip Gear.v.1.0.2014.09.26.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/Wire.v.1.0.2017.02.16.zip Wire.v.1.0.2017.02.16.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/FxGraph.v.1.2e.2016.04.17.zip FxGraph.v.1.2e.2016.04.17.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/RadialPattern.v.1.3.2015.12.13.zip RadialPattern.v.1.3.2015.12.13.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/Subdiv_beta9.zip Subdiv_beta9.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/CVolume.v.3.0.2022.05.24.zip CVolume.v.3.0.2022.05.24.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/ImportObj.v.1.5.2015.09.10.zip ImportObj.v.1.5.2015.09.10.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/DelCorners.v.1.0.2015.09.09.zip DelCorners.v.1.0.2015.09.09.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/Array3D.v.0.7.2015.09.04.zip Array3D.v.0.7.2015.09.04.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/PointsOnCurve.1.2b.2013.11.15.zip PointsOnCurve.1.2b.2013.11.15.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/sScale.v.0.6.2015.03.28.zip sScale.v.0.6.2015.03.28.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/SubdivBeta.v.6.1.2015.03.05.zip SubdivBeta.v.6.1.2015.03.05.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/vSpray.v.1.1.2014.01.27.zip vSpray.v.1.1.2014.01.27.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/vSeed.v.1.2.2014.02.05.zip vSeed.v.1.2.2014.02.05.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/vOrientFast.v.1.0.2014.01.28.zip vOrientFast.v.1.0.2014.01.28.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/vOrient.v.1.0.2014.01.28.zip vOrient.v.1.0.2014.01.28.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/vDrop.v.1.0.2014.01.28.zip vDrop.v.1.0.2014.01.28.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/vClone.v.1.0.2014.01.26.zip vClone.v.1.0.2014.01.26.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/SaveInstances.v.1.0.2014.11.05.zip SaveInstances.v.1.0.2014.11.05.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/Starmap.v.0.45.2015.08.23.zip Starmap.v.0.45.2015.08.23.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/MultiIsoPlus.v.1.0.2015.01.18.zip MultiIsoPlus.v.1.0.2015.01.18.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/Heightmap.v.0.6.2015.08.20.zip Heightmap.v.0.6.2015.08.20.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/Cycles.v.1.0.1.2015.03.15.zip Cycles.v.1.0.1.2015.03.15.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/cyclicPoly.v.0.5.2015.05.23.zip cyclicPoly.v.0.5.2015.05.23.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/Subdiv_beta6.1.zip Subdiv_beta6.1.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/SubdivClassic.v.0.6.2015.02.22.zip SubdivClassic.v.0.6.2015.02.22.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/deCasteljau.v.1.0.2015.01.21.zip deCasteljau.v.1.0.2015.01.21.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/RandomCurves.v.1.0.2014.01.25.zip RandomCurves.v.1.0.2014.01.25.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/PatternSelection.v.0.3.2014.02.20.zip PatternSelection.v.0.3.2014.02.20.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/DistortCurves.v.1.0.2014.11.04.zip DistortCurves.v.1.0.2014.11.04.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/SpherePointsPlus.v.1.1.2014.10.23.zip SpherePointsPlus.v.1.1.2014.10.23.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/RandomStyles.v.0.9.2014.01.17.zip RandomStyles.v.0.9.2014.01.17.zip]</div><br />
<br />
<br><br />
<div>[https://web.archive.org/web/20201105115049/http://moi.maxsm.net/ Max's site snapshot on Internet Archive]</div></div>Michael Gibsonhttp://moi3d.com/wiki/index.php?title=MaxScriptArchive&diff=1031MaxScriptArchive2022-08-16T00:56:04Z<p>Michael Gibson: </p>
<hr />
<div><big>Mirror of Max Smirnov's MoI scripts, distributed under MIT license</big><br />
<br />
Scripts:<br />
<div>[https://moi3d.com/download/scripts/max/Voronoi.v.1.11.2018.03.09.zip Voronoi.v.1.11.2018.03.09.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/RasterImage.v.0.5.2018.02.25(MoI.v4).zip RasterImage.v.0.5.2018.02.25(MoI.v4).zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/Heightmap.v.0.8.2018.02.24(MoI.v4).zip Heightmap.v.0.8.2018.02.24(MoI.v4).zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/Dimensions.v.1.1.2018.02.24.zip Dimensions.v.1.1.2018.02.24.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/NutsAndBolts.v.0.96.2015.06.22.zip NutsAndBolts.v.0.96.2015.06.22.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/cMorph.v.1.1.2014.01.19.zip cMorph.v.1.1.2014.01.19.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/Cloth.v.0.97.2017.11.23.zip Cloth.v.0.97.2017.11.23.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/FxGraph3D.v.1.1.2016.04.17.zip FxGraph3D.v.1.1.2016.04.17.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/FatLines.v.0.6.2017.11.17.zip FatLines.v.0.6.2017.11.17.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/sSplit.v.0.95.2015.08.10.zip sSplit.v.0.95.2015.08.10.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/sBridge.v.0.71.2015.03.26.zip sBridge.v.0.71.2015.03.26.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/Gear.v.1.0.2014.09.26.zip Gear.v.1.0.2014.09.26.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/Wire.v.1.0.2017.02.16.zip Wire.v.1.0.2017.02.16.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/FxGraph.v.1.2e.2016.04.17.zip FxGraph.v.1.2e.2016.04.17.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/RadialPattern.v.1.3.2015.12.13.zip RadialPattern.v.1.3.2015.12.13.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/Subdiv_beta9.zip Subdiv_beta9.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/CVolume.v.3.0.2022.05.24.zip CVolume.v.3.0.2022.05.24.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/ImportObj.v.1.5.2015.09.10.zip ImportObj.v.1.5.2015.09.10.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/DelCorners.v.1.0.2015.09.09.zip DelCorners.v.1.0.2015.09.09.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/Array3D.v.0.7.2015.09.04.zip Array3D.v.0.7.2015.09.04.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/PointsOnCurve.1.2b.2013.11.15.zip PointsOnCurve.1.2b.2013.11.15.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/sScale.v.0.6.2015.03.28.zip sScale.v.0.6.2015.03.28.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/SubdivBeta.v.6.1.2015.03.05.zip SubdivBeta.v.6.1.2015.03.05.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/vSpray.v.1.1.2014.01.27.zip vSpray.v.1.1.2014.01.27.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/vSeed.v.1.2.2014.02.05.zip vSeed.v.1.2.2014.02.05.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/vOrientFast.v.1.0.2014.01.28.zip vOrientFast.v.1.0.2014.01.28.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/vOrient.v.1.0.2014.01.28.zip vOrient.v.1.0.2014.01.28.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/vDrop.v.1.0.2014.01.28.zip vDrop.v.1.0.2014.01.28.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/vClone.v.1.0.2014.01.26.zip vClone.v.1.0.2014.01.26.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/SaveInstances.v.1.0.2014.11.05.zip SaveInstances.v.1.0.2014.11.05.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/Starmap.v.0.45.2015.08.23.zip Starmap.v.0.45.2015.08.23.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/MultiIsoPlus.v.1.0.2015.01.18.zip MultiIsoPlus.v.1.0.2015.01.18.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/Heightmap.v.0.6.2015.08.20.zip Heightmap.v.0.6.2015.08.20.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/Cycles.v.1.0.1.2015.03.15.zip Cycles.v.1.0.1.2015.03.15.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/cyclicPoly.v.0.5.2015.05.23.zip cyclicPoly.v.0.5.2015.05.23.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/Subdiv_beta6.1.zip Subdiv_beta6.1.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/SubdivClassic.v.0.6.2015.02.22.zip SubdivClassic.v.0.6.2015.02.22.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/deCasteljau.v.1.0.2015.01.21.zip deCasteljau.v.1.0.2015.01.21.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/RandomCurves.v.1.0.2014.01.25.zip RandomCurves.v.1.0.2014.01.25.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/PatternSelection.v.0.3.2014.02.20.zip PatternSelection.v.0.3.2014.02.20.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/DistortCurves.v.1.0.2014.11.04.zip DistortCurves.v.1.0.2014.11.04.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/Cloth.v.0.96.2014.02.23.zip Cloth.v.0.96.2014.02.23.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/SpherePointsPlus.v.1.1.2014.10.23.zip SpherePointsPlus.v.1.1.2014.10.23.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/RandomStyles.v.0.9.2014.01.17.zip RandomStyles.v.0.9.2014.01.17.zip]</div><br />
<br />
<br><br />
<div>[https://web.archive.org/web/20201105115049/http://moi.maxsm.net/ Max's site snapshot on Internet Archive]</div></div>Michael Gibsonhttp://moi3d.com/wiki/index.php?title=MaxScriptArchive&diff=1030MaxScriptArchive2022-08-16T00:54:01Z<p>Michael Gibson: </p>
<hr />
<div><big>Mirror of Max Smirnov's MoI scripts, distributed under MIT license</big><br />
<br />
Scripts:<br />
<div>[https://moi3d.com/download/scripts/max/Voronoi.v.1.11.2018.03.09.zip Voronoi.v.1.11.2018.03.09.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/RasterImage.v.0.5.2018.02.25(MoI.v4).zip RasterImage.v.0.5.2018.02.25(MoI.v4).zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/Heightmap.v.0.8.2018.02.24(MoI.v4).zip Heightmap.v.0.8.2018.02.24(MoI.v4).zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/Dimensions.v.1.1.2018.02.24.zip Dimensions.v.1.1.2018.02.24.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/NutsAndBolts.v.0.96.2015.06.22.zip NutsAndBolts.v.0.96.2015.06.22.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/cMorph.v.1.1.2014.01.19.zip cMorph.v.1.1.2014.01.19.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/Cloth.v.0.97.2017.11.23.zip Cloth.v.0.97.2017.11.23.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/FxGraph3D.v.1.1.2016.04.17.zip FxGraph3D.v.1.1.2016.04.17.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/FatLines.v.0.6.2017.11.17.zip FatLines.v.0.6.2017.11.17.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/sSplit.v.0.95.2015.08.10.zip sSplit.v.0.95.2015.08.10.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/sBridge.v.0.71.2015.03.26.zip sBridge.v.0.71.2015.03.26.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/Gear.v.1.0.2014.09.26.zip Gear.v.1.0.2014.09.26.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/Wire.v.1.0.2017.02.16.zip Wire.v.1.0.2017.02.16.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/FxGraph.v.1.2e.2016.04.17.zip FxGraph.v.1.2e.2016.04.17.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/RadialPattern.v.1.3.2015.12.13.zip RadialPattern.v.1.3.2015.12.13.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/Subdiv_beta9.zip Subdiv_beta9.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/CVolume.v.3.0.2022.05.24.zip CVolume.v.3.0.2022.05.24.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/ImportObj.v.1.5.2015.09.10.zip ImportObj.v.1.5.2015.09.10.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/DelCorners.v.1.0.2015.09.09.zip DelCorners.v.1.0.2015.09.09.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/Array3D.v.0.7.2015.09.04.zip Array3D.v.0.7.2015.09.04.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/PointsOnCurve.1.2b.2013.11.15.zip PointsOnCurve.1.2b.2013.11.15.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/sScale.v.0.6.2015.03.28.zip sScale.v.0.6.2015.03.28.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/SubdivBeta.v.6.1.2015.03.05.zip SubdivBeta.v.6.1.2015.03.05.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/vSpray.v.1.1.2014.01.27.zip vSpray.v.1.1.2014.01.27.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/vSeed.v.1.2.2014.02.05.zip vSeed.v.1.2.2014.02.05.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/vOrientFast.v.1.0.2014.01.28.zip vOrientFast.v.1.0.2014.01.28.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/vOrient.v.1.0.2014.01.28.zip vOrient.v.1.0.2014.01.28.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/vDrop.v.1.0.2014.01.28.zip vDrop.v.1.0.2014.01.28.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/vClone.v.1.0.2014.01.26.zip vClone.v.1.0.2014.01.26.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/SaveInstances.v.1.0.2014.11.05.zip SaveInstances.v.1.0.2014.11.05.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/Starmap.v.0.45.2015.08.23.zip Starmap.v.0.45.2015.08.23.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/MultiIsoPlus.v.1.0.2015.01.18.zip MultiIsoPlus.v.1.0.2015.01.18.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/Heightmap.v.0.6.2015.08.20.zip Heightmap.v.0.6.2015.08.20.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/Cycles.v.1.0.1.2015.03.15.zip Cycles.v.1.0.1.2015.03.15.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/CVolumeRus.v.1.2.2015.08.29.zip CVolumeRus.v.1.2.2015.08.29.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/cyclicPoly.v.0.5.2015.05.23.zip cyclicPoly.v.0.5.2015.05.23.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/Cycles.CPU.zip Cycles.CPU.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/Cycles.CUDA.zip Cycles.CUDA.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/Subdiv_beta6.1.zip Subdiv_beta6.1.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/SubdivClassic.v.0.6.2015.02.22.zip SubdivClassic.v.0.6.2015.02.22.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/deCasteljau.v.1.0.2015.01.21.zip deCasteljau.v.1.0.2015.01.21.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/RandomCurves.v.1.0.2014.01.25.zip RandomCurves.v.1.0.2014.01.25.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/PatternSelection.v.0.3.2014.02.20.zip PatternSelection.v.0.3.2014.02.20.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/DistortCurves.v.1.0.2014.11.04.zip DistortCurves.v.1.0.2014.11.04.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/Cloth.v.0.96.2014.02.23.zip Cloth.v.0.96.2014.02.23.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/SpherePointsPlus.v.1.1.2014.10.23.zip SpherePointsPlus.v.1.1.2014.10.23.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/RandomStyles.v.0.9.2014.01.17.zip RandomStyles.v.0.9.2014.01.17.zip]</div><br />
<br />
<br><br />
<div>[https://web.archive.org/web/20201105115049/http://moi.maxsm.net/ Max's site snapshot on Internet Archive]</div></div>Michael Gibsonhttp://moi3d.com/wiki/index.php?title=MaxScriptArchive&diff=1029MaxScriptArchive2022-08-16T00:52:17Z<p>Michael Gibson: </p>
<hr />
<div><big>Mirror of Max Smirnov's MoI scripts, distributed under MIT license</big><br />
<br />
Scripts:<br />
<div>[https://moi3d.com/download/scripts/max/Voronoi.v.1.11.2018.03.09.zip Voronoi.v.1.11.2018.03.09.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/RasterImage.v.0.5.2018.02.25(MoI.v4).zip RasterImage.v.0.5.2018.02.25(MoI.v4).zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/Heightmap.v.0.8.2018.02.24(MoI.v4).zip Heightmap.v.0.8.2018.02.24(MoI.v4).zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/Dimensions.v.1.1.2018.02.24.zip Dimensions.v.1.1.2018.02.24.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/NutsAndBolts.v.0.96.2015.06.22.zip NutsAndBolts.v.0.96.2015.06.22.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/cMorph.v.1.1.2014.01.19.zip cMorph.v.1.1.2014.01.19.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/Cloth.v.0.97.2017.11.23.zip Cloth.v.0.97.2017.11.23.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/FxGraph3D.v.1.1.2016.04.17.zip FxGraph3D.v.1.1.2016.04.17.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/FatLines.v.0.6.2017.11.17.zip FatLines.v.0.6.2017.11.17.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/sSplit.v.0.95.2015.08.10.zip sSplit.v.0.95.2015.08.10.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/sBridge.v.0.71.2015.03.26.zip sBridge.v.0.71.2015.03.26.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/Gear.v.1.0.2014.09.26.zip Gear.v.1.0.2014.09.26.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/Wire.v.1.0.2017.02.16.zip Wire.v.1.0.2017.02.16.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/FxGraph.v.1.2e.2016.04.17.zip FxGraph.v.1.2e.2016.04.17.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/RadialPattern.v.1.3.2015.12.13.zip RadialPattern.v.1.3.2015.12.13.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/Subdiv_beta9.zip Subdiv_beta9.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/CVolume.v.3.0.2022.05.24.zip CVolume.v.3.0.2022.05.24.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/Dimensions.v.1.1.2018.02.24.zip Dimensions.v.1.1.2018.02.24.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/ImportObj.v.1.5.2015.09.10.zip ImportObj.v.1.5.2015.09.10.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/DelCorners.v.1.0.2015.09.09.zip DelCorners.v.1.0.2015.09.09.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/Array3D.v.0.7.2015.09.04.zip Array3D.v.0.7.2015.09.04.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/PointsOnCurve.1.2b.2013.11.15.zip PointsOnCurve.1.2b.2013.11.15.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/sScale.v.0.6.2015.03.28.zip sScale.v.0.6.2015.03.28.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/SubdivBeta.v.6.1.2015.03.05.zip SubdivBeta.v.6.1.2015.03.05.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/vSpray.v.1.1.2014.01.27.zip vSpray.v.1.1.2014.01.27.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/vSeed.v.1.2.2014.02.05.zip vSeed.v.1.2.2014.02.05.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/vOrientFast.v.1.0.2014.01.28.zip vOrientFast.v.1.0.2014.01.28.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/vOrient.v.1.0.2014.01.28.zip vOrient.v.1.0.2014.01.28.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/vDrop.v.1.0.2014.01.28.zip vDrop.v.1.0.2014.01.28.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/vClone.v.1.0.2014.01.26.zip vClone.v.1.0.2014.01.26.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/SaveInstances.v.1.0.2014.11.05.zip SaveInstances.v.1.0.2014.11.05.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/Starmap.v.0.45.2015.08.23.zip Starmap.v.0.45.2015.08.23.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/MultiIsoPlus.v.1.0.2015.01.18.zip MultiIsoPlus.v.1.0.2015.01.18.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/Heightmap.v.0.6.2015.08.20.zip Heightmap.v.0.6.2015.08.20.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/Cycles.v.1.0.1.2015.03.15.zip Cycles.v.1.0.1.2015.03.15.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/CVolumeRus.v.1.2.2015.08.29.zip CVolumeRus.v.1.2.2015.08.29.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/cyclicPoly.v.0.5.2015.05.23.zip cyclicPoly.v.0.5.2015.05.23.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/Cycles.CPU.zip Cycles.CPU.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/Cycles.CUDA.zip Cycles.CUDA.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/Subdiv_beta6.1.zip Subdiv_beta6.1.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/SubdivClassic.v.0.6.2015.02.22.zip SubdivClassic.v.0.6.2015.02.22.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/deCasteljau.v.1.0.2015.01.21.zip deCasteljau.v.1.0.2015.01.21.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/RandomCurves.v.1.0.2014.01.25.zip RandomCurves.v.1.0.2014.01.25.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/PatternSelection.v.0.3.2014.02.20.zip PatternSelection.v.0.3.2014.02.20.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/DistortCurves.v.1.0.2014.11.04.zip DistortCurves.v.1.0.2014.11.04.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/Cloth.v.0.96.2014.02.23.zip Cloth.v.0.96.2014.02.23.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/SpherePointsPlus.v.1.1.2014.10.23.zip SpherePointsPlus.v.1.1.2014.10.23.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/RandomStyles.v.0.9.2014.01.17.zip RandomStyles.v.0.9.2014.01.17.zip]</div><br />
<br />
<br><br />
<div>[https://web.archive.org/web/20201105115049/http://moi.maxsm.net/ Max's site snapshot on Internet Archive]</div></div>Michael Gibsonhttp://moi3d.com/wiki/index.php?title=MaxScriptArchive&diff=1028MaxScriptArchive2022-08-16T00:51:21Z<p>Michael Gibson: </p>
<hr />
<div><big>Mirror of Max Smirnov's MoI scripts, distributed under MIT license</big><br />
<br />
Scripts:<br />
<div>[https://moi3d.com/download/scripts/max/Voronoi.v.1.11.2018.03.09.zip Voronoi.v.1.11.2018.03.09.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/RasterImage.v.0.5.2018.02.25(MoI.v4).zip RasterImage.v.0.5.2018.02.25(MoI.v4).zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/Heightmap.v.0.8.2018.02.24(MoI.v4).zip Heightmap.v.0.8.2018.02.24(MoI.v4).zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/Dimensions.v.1.1.2018.02.24.zip Dimensions.v.1.1.2018.02.24.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/NutsAndBolts.v.0.96.2015.06.22.zip NutsAndBolts.v.0.96.2015.06.22.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/cMorph.v.1.1.2014.01.19.zip cMorph.v.1.1.2014.01.19.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/Cloth.v.0.97.2017.11.23.zip Cloth.v.0.97.2017.11.23.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/FxGraph3D.v.1.1.2016.04.17.zip FxGraph3D.v.1.1.2016.04.17.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/FatLines.v.0.6.2017.11.17.zip FatLines.v.0.6.2017.11.17.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/sSplit.v.0.95.2015.08.10.zip sSplit.v.0.95.2015.08.10.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/sBridge.v.0.71.2015.03.26.zip sBridge.v.0.71.2015.03.26.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/Gear.v.1.0.2014.09.26.zip Gear.v.1.0.2014.09.26.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/Wire.v.1.0.2017.02.16.zip Wire.v.1.0.2017.02.16.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/FxGraph.v.1.2e.2016.04.17.zip FxGraph.v.1.2e.2016.04.17.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/RadialPattern.v.1.3.2015.12.13.zip RadialPattern.v.1.3.2015.12.13.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/Subdiv_beta9.zip Subdiv_beta9.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/CVolume.v.3.0.2022.05.24.zip CVolume.v.3.0.2022.05.24.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/Dimensions.v.1.0.2015.09.14.zip Dimensions.v.1.0.2015.09.14.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/ImportObj.v.1.5.2015.09.10.zip ImportObj.v.1.5.2015.09.10.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/DelCorners.v.1.0.2015.09.09.zip DelCorners.v.1.0.2015.09.09.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/Array3D.v.0.7.2015.09.04.zip Array3D.v.0.7.2015.09.04.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/PointsOnCurve.1.2b.2013.11.15.zip PointsOnCurve.1.2b.2013.11.15.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/sScale.v.0.6.2015.03.28.zip sScale.v.0.6.2015.03.28.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/SubdivBeta.v.6.1.2015.03.05.zip SubdivBeta.v.6.1.2015.03.05.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/vSpray.v.1.1.2014.01.27.zip vSpray.v.1.1.2014.01.27.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/vSeed.v.1.2.2014.02.05.zip vSeed.v.1.2.2014.02.05.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/vOrientFast.v.1.0.2014.01.28.zip vOrientFast.v.1.0.2014.01.28.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/vOrient.v.1.0.2014.01.28.zip vOrient.v.1.0.2014.01.28.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/vDrop.v.1.0.2014.01.28.zip vDrop.v.1.0.2014.01.28.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/vClone.v.1.0.2014.01.26.zip vClone.v.1.0.2014.01.26.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/SaveInstances.v.1.0.2014.11.05.zip SaveInstances.v.1.0.2014.11.05.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/Starmap.v.0.45.2015.08.23.zip Starmap.v.0.45.2015.08.23.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/MultiIsoPlus.v.1.0.2015.01.18.zip MultiIsoPlus.v.1.0.2015.01.18.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/Heightmap.v.0.6.2015.08.20.zip Heightmap.v.0.6.2015.08.20.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/Cycles.v.1.0.1.2015.03.15.zip Cycles.v.1.0.1.2015.03.15.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/CVolumeRus.v.1.2.2015.08.29.zip CVolumeRus.v.1.2.2015.08.29.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/cyclicPoly.v.0.5.2015.05.23.zip cyclicPoly.v.0.5.2015.05.23.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/Cycles.CPU.zip Cycles.CPU.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/Cycles.CUDA.zip Cycles.CUDA.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/Subdiv_beta6.1.zip Subdiv_beta6.1.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/SubdivClassic.v.0.6.2015.02.22.zip SubdivClassic.v.0.6.2015.02.22.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/deCasteljau.v.1.0.2015.01.21.zip deCasteljau.v.1.0.2015.01.21.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/RandomCurves.v.1.0.2014.01.25.zip RandomCurves.v.1.0.2014.01.25.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/PatternSelection.v.0.3.2014.02.20.zip PatternSelection.v.0.3.2014.02.20.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/DistortCurves.v.1.0.2014.11.04.zip DistortCurves.v.1.0.2014.11.04.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/Cloth.v.0.96.2014.02.23.zip Cloth.v.0.96.2014.02.23.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/SpherePointsPlus.v.1.1.2014.10.23.zip SpherePointsPlus.v.1.1.2014.10.23.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/RandomStyles.v.0.9.2014.01.17.zip RandomStyles.v.0.9.2014.01.17.zip]</div><br />
<br />
<br><br />
<div>[https://web.archive.org/web/20201105115049/http://moi.maxsm.net/ Max's site snapshot on Internet Archive]</div></div>Michael Gibsonhttp://moi3d.com/wiki/index.php?title=MaxScriptArchive&diff=1027MaxScriptArchive2022-08-16T00:49:23Z<p>Michael Gibson: Links to mirror of Max Smirnov's script file archive</p>
<hr />
<div><big>Mirror of Max Smirnov's MoI scripts, distributed under MIT license</big><br />
<br />
Scripts:<br />
<div>[https://moi3d.com/download/scripts/max/Voronoi.v.1.11.2018.03.09.zip Voronoi.v.1.11.2018.03.09.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/RasterImage.v.0.5.2018.02.25(MoI.v4).zip RasterImage.v.0.5.2018.02.25(MoI.v4).zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/Heightmap.v.0.8.2018.02.24(MoI.v4).zip Heightmap.v.0.8.2018.02.24(MoI.v4).zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/Dimensions.v.1.1.2018.02.24.zip Dimensions.v.1.1.2018.02.24.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/NutsAndBolts.v.0.96.2015.06.22.zip NutsAndBolts.v.0.96.2015.06.22.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/cMorph.v.1.1.2014.01.19.zip cMorph.v.1.1.2014.01.19.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/Cloth.v.0.97.2017.11.23.zip Cloth.v.0.97.2017.11.23.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/FxGraph3D.v.1.1.2016.04.17.zip FxGraph3D.v.1.1.2016.04.17.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/FatLines.v.0.6.2017.11.17.zip FatLines.v.0.6.2017.11.17.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/sSplit.v.0.95.2015.08.10.zip sSplit.v.0.95.2015.08.10.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/sBridge.v.0.71.2015.03.26.zip sBridge.v.0.71.2015.03.26.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/Gear.v.1.0.2014.09.26.zip Gear.v.1.0.2014.09.26.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/Wire.v.1.0.2017.02.16.zip Wire.v.1.0.2017.02.16.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/FxGraph.v.1.2e.2016.04.17.zip FxGraph.v.1.2e.2016.04.17.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/RadialPattern.v.1.3.2015.12.13.zip RadialPattern.v.1.3.2015.12.13.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/Subdiv_beta9.zip Subdiv_beta9.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/CVolume.v.2.0.2015.09.27.zip CVolume.v.2.0.2015.09.27.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/Dimensions.v.1.0.2015.09.14.zip Dimensions.v.1.0.2015.09.14.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/ImportObj.v.1.5.2015.09.10.zip ImportObj.v.1.5.2015.09.10.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/DelCorners.v.1.0.2015.09.09.zip DelCorners.v.1.0.2015.09.09.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/Array3D.v.0.7.2015.09.04.zip Array3D.v.0.7.2015.09.04.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/PointsOnCurve.1.2b.2013.11.15.zip PointsOnCurve.1.2b.2013.11.15.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/sScale.v.0.6.2015.03.28.zip sScale.v.0.6.2015.03.28.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/SubdivBeta.v.6.1.2015.03.05.zip SubdivBeta.v.6.1.2015.03.05.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/vSpray.v.1.1.2014.01.27.zip vSpray.v.1.1.2014.01.27.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/vSeed.v.1.2.2014.02.05.zip vSeed.v.1.2.2014.02.05.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/vOrientFast.v.1.0.2014.01.28.zip vOrientFast.v.1.0.2014.01.28.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/vOrient.v.1.0.2014.01.28.zip vOrient.v.1.0.2014.01.28.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/vDrop.v.1.0.2014.01.28.zip vDrop.v.1.0.2014.01.28.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/vClone.v.1.0.2014.01.26.zip vClone.v.1.0.2014.01.26.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/SaveInstances.v.1.0.2014.11.05.zip SaveInstances.v.1.0.2014.11.05.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/Starmap.v.0.45.2015.08.23.zip Starmap.v.0.45.2015.08.23.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/MultiIsoPlus.v.1.0.2015.01.18.zip MultiIsoPlus.v.1.0.2015.01.18.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/Heightmap.v.0.6.2015.08.20.zip Heightmap.v.0.6.2015.08.20.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/Cycles.v.1.0.1.2015.03.15.zip Cycles.v.1.0.1.2015.03.15.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/CVolumeRus.v.1.2.2015.08.29.zip CVolumeRus.v.1.2.2015.08.29.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/cyclicPoly.v.0.5.2015.05.23.zip cyclicPoly.v.0.5.2015.05.23.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/Cycles.CPU.zip Cycles.CPU.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/Cycles.CUDA.zip Cycles.CUDA.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/Subdiv_beta6.1.zip Subdiv_beta6.1.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/SubdivClassic.v.0.6.2015.02.22.zip SubdivClassic.v.0.6.2015.02.22.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/deCasteljau.v.1.0.2015.01.21.zip deCasteljau.v.1.0.2015.01.21.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/RandomCurves.v.1.0.2014.01.25.zip RandomCurves.v.1.0.2014.01.25.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/PatternSelection.v.0.3.2014.02.20.zip PatternSelection.v.0.3.2014.02.20.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/DistortCurves.v.1.0.2014.11.04.zip DistortCurves.v.1.0.2014.11.04.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/Cloth.v.0.96.2014.02.23.zip Cloth.v.0.96.2014.02.23.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/SpherePointsPlus.v.1.1.2014.10.23.zip SpherePointsPlus.v.1.1.2014.10.23.zip]</div><br />
<div>[https://moi3d.com/download/scripts/max/RandomStyles.v.0.9.2014.01.17.zip RandomStyles.v.0.9.2014.01.17.zip]</div><br />
<br />
<br><br />
<div>[https://web.archive.org/web/20201105115049/http://moi.maxsm.net/ Max's site snapshot on Internet Archive]</div></div>Michael Gibsonhttp://moi3d.com/wiki/index.php?title=Scripting&diff=1026Scripting2022-06-08T04:41:14Z<p>Michael Gibson: </p>
<hr />
<div>This can be a place to collect information about scripting in MoI.<br />
<br />
There isn't any official documentation available for scripting (there probably won't be for quite a while yet), but you can download the [http://moi3d.com/forum/get_attachment.php?webtag=MOI&hash=2bf297a1a2b667929e93a23d8805271c&filename=moi.idl moi.idl file] which contains a list of all interfaces available to scripts and their properties and methods.<br />
<br />
In addition, the following community provided resources are available:<br />
<br />
;[http://kyticka.webzdarma.cz/3d/moi/ Petr's MoI Page]<br />
:An extensive collection of MoI scripts.<br />
<br />
[http://moi3d.com/forum/index.php?webtag=MOI&msg=6546.1 Some other documentation available on this forum thread]<br />
<br />
[http://moi3d.com/forum/index.php?webtag=MOI&msg=6727.2 See here for info on disabling file caching so commands will reload on every run]<br />
<br />
[http://moi3d.com/forum/index.php?webtag=MOI&msg=7238.1 Scripting discussion thread on the forum]<br />
<br />
[http://moi.maxsm.net/api Max's mirror of Dave Morrill's script documentation]<br />
<br />
[http://moi3d.com/forum/index.php?webtag=MOI&msg=10720.5 Burr's snapshot of Dave Morrill's script documentation]</div>Michael Gibsonhttp://moi3d.com/wiki/index.php?title=V5Beta&diff=1025V5Beta2022-05-28T22:48:39Z<p>Michael Gibson: </p>
<hr />
<div><big>Release notes for each V5 beta release are gathered here.</big><br />
<br />
== Apr-10-2022 ==<br />
<br />
[http://moi3d.com/forum/index.php?webtag=MOI&msg=10652.1 Forum announcement]<br />
<br />
<div style="width: 700px">New stuff:<br />
<br />
Dark UI theme and theme editor available under Options &gt; General &gt; "UI Theme".<br />
<br />
Groups - create a group using the menu on the "Objects" section of the Scene Browser.<br />
<br />
Types section of the Scene Browser has additional sub types like "Types &gt; Curves &gt; Circles" can be used to target just curves that are circles.<br />
Sub types include:<br/><br />
&nbsp;&nbsp;&nbsp;&nbsp;Curves &gt; Open, Closed, Planar, Lines, Polylines, Circles, Arcs, Ellipses, Elliptical arcs<br/><br />
&nbsp;&nbsp;&nbsp;&nbsp;Surfaces &gt; Planar<br/><br />
&nbsp;&nbsp;&nbsp;&nbsp;Edges &gt; Joined, Naked<br/><br />
&nbsp;&nbsp;&nbsp;&nbsp;Properties &gt; Selected, Unselected, Locked, Unlocked, Visible, New objects.<br/><br />
<br />
Support for import/export to SVG format.<br />
<br />
SubD conversion now supports FBX format.<br />
<br />
The Mac version is now a universal binary that contains code for both Intel and M1 CPU architectures.<br />
<br />
Added File &gt; Notes button for setting text notes that are saved inside of a .3dm file.<br />
<br />
Scene browser - click on text label of an item in the Objects section of the scene browser to assign current selection to a name or group.<br />
<br />
Annotation text display engine performance - Hoist several Qt text layout calls up to layout time rather than calling at render time. Major improvement to render performance for text. Also if model units sized text is small on screen render as a textured quad instead of using text geometry.<br />
<br />
Scene browser - Add "Unnamed" entry under Objects to allow targeting of all objects without a name.<br />
<br />
Update STEP export - split closed surfaces Default is on, can be set in moi.ini under:<br/><br />
[STEP]<br/><br />
ExportSplitClosedSurfaces=n<br />
<br />
Update tab controls - Add dot to active tab.<br />
<br />
New rendering platforms - support for Direct3D9 on Windows and Metal on Mac. Can be set in moi.ini under [View] GraphicsAPI=Direct3D9 or GraphicsAPI=Metal . If you are having problems with a particular video driver you can try using one of these alternatives.<br />
<br />
Added experimental ViewProject command that transforms objects by a perspective projection.<br />
<br />
Support clipboard copy/paste of SVG format. To copy to the clipboard using SVG format, set up a shortcut key with this:<br/><br />
script: moi.geometryDatabase.copyToClipboardSVG();<br />
<br />
Update default render engine on Wine - Default to Direct3D11 on Wine instead of OpenGL. Wine seems to compensate for various driver bugs in its Direct3D layer.<br />
<br />
Update text rendering under Wine. Wine seems to have a bug in ID3D11DeviceContext::UpdateSubresource when it's being applied to an 8-bit luminance texture. When running under Wine use a 32-bit texture format for the text texture to avoid running into this.<br />
<br />
Fix Mac version bug where doing a double right click could get stuck in a loop if there was a file dialog being shown after the double right click happened.<br />
<br />
Fix crash bug in Extrude when extruding a curve with a large number of segments and with particular weight values. Fixes a bug reported by Scott Carson in e-mail.<br />
<br />
Fix boolean bug where edges that touched at singularity were being incorrectly merged in boolean union. Fixes a bug reported through e-mail by Christopher Schardt.<br />
<br />
Fix boolean problem with multi object booleans where tolerance settings were being handled slightly differently when many objects were being booleaned. This could sometimes yield different results when booleaning many objects at once instead of only 2 at a time. Fixes a boolean union bug reported through e-mail by Christopher Schardt.<br />
<br />
Update Mac trackpad/Magic Mouse handling. Give up trying to automatically figure out if a scroll message is coming from Magic Mouse or trackpad it does not appear to be possible to do this reliably. So make Magic Mouse scroll behave same as trackpad scroll, the moi.ini option for doing trackpad scroll as a wheel mouse ([MultiTouch] UseTrackpadScrollAsMouseWheel=y) can be used to get old behavior on Magic Mouse.<br />
Also holding down Alt while doing a trackpad scroll will instead do a wheel zoom now.<br />
There is also a new parameter to reverse scroll/pan: [MultiTouch] ReverseTrackpadScroll=y<br />
<br />
Updated Sweep 2 rails maintain height mode. If the the 2 rails start or end in a point don't disable "Maintain height" for the entire sweep, instead handle the scaling down to a point after the first or last proflie.<br />
<br />
Update background images - Add in moi.ini option to make background image embed turned on by default.<br/><br />
[View]<br/><br />
BackgroundImageEmbedDefault=y<br />
<br />
Update surface/surface intersection - Look for and remove duplicate intersection results. Fixes bug with multiple curve intersection results reported by Przemas in the forum here:<br/><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=10460.1<br />
<br />
Update chamfer command - swap. Add swap button when "Use 2 distances" is active. Requested on the forum by 3image here:<br/><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=10289.37<br />
<br />
Update mesh export vertex normal combining. Change vertex normal combining to use tolerance of 0.5 degrees instead of 3.0 degrees. It can also be changed now in moi.ini .<br/><br />
[Mesh Export]<br/><br />
UnifyVertexNormalsAngleToleranceDegrees=0.5<br />
<br />
Update background image properties dialog - add width/height fields. Requested by moritz on the forum here:<br/><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=10289.29<br />
<br />
Update text selection. Fix problem where text selection was lost when swiping a selection and releasing mouse button off of the UIPanel window.<br />
<br />
Update selection - multiple select. If multiple select only with shift key is enabled don't clear selection if ctrl is down so that Ctrl+drag will still work as a deselection window. Fixes bug reported on the forum by Viewbyte here:<br/><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=10439.3<br />
<br />
Update DXF import - fix LWPOLYLINE import 16 bit overflow crash bug reported through e-mail by Jörg Vollmer.<br />
<br />
Update curve drawing corners - Make the current active point in curve drawing be shown as a corner if ctrl is down. Previously it would only show as a corner after it was picked.<br />
<br />
Update STEP import - FACETED_BREP entities. v3 would read FACETED_BREP entities but this was lost in v4 with the restructuring to use multiple threads. Process these now, fixes v3/v4 regression reported on the forum by Martin here:<br/><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=10415.7<br />
<br />
Update Flow. Sew edges for flow result so a closed tube will have start/end edges joined to make a solid.<br />
<br />
Update ArcCenter command - int snap. Enable radial intersection snap point for ArcCenter command. Fixes a bug reported by Andre in the forum here:<br/><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=10399.1<br />
<br />
Fix transform regression. Fix regression where invalidating hit test map on selection change (change near the end of v4 beta) was causing transforms like object drag to regenerate the hit test map on every mousemove. Fixes a performance regression reported through e-mail by Massimo.<br />
<br />
Add option for grid opacity in moi.ini under [Grid] GridOpacity=255<br />
<br />
Update relative expressions. Add in percent relative expression, so you can put in 120% into a distance field to alter the current value.<br />
<br />
Fixes for running on Mac with case sensitive filesystem.<br />
<br />
Update Loft with loft style = straight. Loft with loft style = straight would generate longer faces in coplanar segments. Fixes bug reported by Ed Ferguson in the forum here:<br/><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=10160.1<br />
<br />
Update Merge command. Process curves with Merge command - will merge G1 segments together.<br />
<br />
Various other minor bug fixes.<br />
<br />
<br />
<b>Scripting:</b><br />
<br />
Updated FilesystemObjectModel::getFiles() - Added optional 3rd parameter to recurse subdirectories.<br />
<br />
Added annotationFrame property to annotation objects so that a script can get an annotation object's plane.<br />
<br />
Edit points scripting - Add scripting interface on objects for:<br/><br />
&nbsp;&nbsp;&nbsp;&nbsp;obj.hasEditPoints - read-only property true if object has edit points, false if not.<br/><br />
&nbsp;&nbsp;&nbsp;&nbsp;obj.hasSelectedEditPoints - read-only property true if object has any selected edit points.<br/><br />
&nbsp;&nbsp;&nbsp;&nbsp;obj.numEditPoints - read-only property for number of edit points.<br/><br />
&nbsp;&nbsp;&nbsp;&nbsp;obj.getEditPoint( index ) - method that returns an x,y,z point for the given edit point index.<br/><br />
&nbsp;&nbsp;&nbsp;&nbsp;obj.getEditPointSelected( index ) - method that returns true if the given edit point is selected.<br/><br />
Also fix bug show points not refreshing redraw properly when set through script rather than through the show points command.<br />
<br />
Added isEllipticalArc property for curves and curvesegments.<br />
<br />
Update viewport.interactiveViewChange(). Add optional 2nd parameter to viewport.interactiveViewChange() function to allow a script to use it in a modal fashion. Fix for Ed's script posted on the forum here:<br/><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=10403.1<br />
<br />
Update save file dialog handling. Allow initializing dialog with a directory name, like:<br/><br />
SaveAs c:\output\fbx<br/><br />
When given a directory name the dialog will start out in that directory.<br />
</div><br />
<br />
<br />
== May-22-2022 ==<br />
<br />
[http://moi3d.com/forum/index.php?webtag=MOI&msg=10706.1 Forum announcement]<br />
<br />
<div style="width: 700px">This release is primarily bug fixes for various aspects of groups.<br />
<br />
<br />
Update group click selection. If Ctrl is held down, then deselect clicked on group instead of drill in.<br />
<br />
Update ungroup - Fix bug where ungroup didn't go just one step when top level group selected.<br />
<br />
Update group copy to clipboard - fix copy to clipboard with group sub object selected<br />
<br />
Update groups window selection. Ctrl+window select was not deselecting the full group when there was no drill in, was only deselecting sub objects. Fixed so that Ctrl+window select targets entire group if no drill in selection. If there is any drill in then leaf nodes will still be targeted instead.<br />
<br />
Add Group label in object type indicator in properties panel.<br />
<br />
Update Scene Browser groups - If an object is inside of a selected group, make it count as selected for displaying selection dot in Types and Styles sections.<br />
<br />
Update detailed object properties dialog for groups - report number of group children.<br />
<br />
Fix bug with groups in detailed object properties dialog showing the style of group objects instead of the group's children and not listing the styles when there are multiple styles in the group.<br />
<br />
Update Project command group processing<br />
<br />
Update select all for groups<br />
<br />
Update moi.geometrydatabase.selectLoop() to work with groups<br />
<br />
Update invert selection for groups<br />
<br />
Fix bug with groups with edit points on. When group was selected, dragging on edit point didn't work, whole group was being dragged instead.<br />
<br />
Update Separate command, groups. Make objects being separated break out from groups.<br />
<br />
Fix bug where drag point on curve would break modified object out of groups.<br />
<br />
Fix problem with group handling for Flow command.<br />
<br />
Fix group bug with ArrayCurve - groups appeared to lose selection when entering path picking stage in ArrayCurve.<br />
<br />
Update scene browser styles for Groups. Tweak styles to not accumulate status for parent group objects, just the contents of the group.<br />
<br />
Update properties panel for groups. Fix assigning style of groups by the properties panel style menu was only setting group parent object style and not child objects.<br />
<br />
<br />
Update radial dimensions. When cross size is set to 0 to disable center point cross lines, don't include radius center point for window selection and bounding box framing. Fixes a bug reported on the forum by Martin here:<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=10652.86<br />
<br />
Update scene browser assigning style - don't modify object hidden or locked state to match existing object states when all current assigned objects were hidden or locked. Can be re-enabled in moi.ini by setting [Scene Browser] AssignStyleAssumeTargetState=y .<br />
<br />
Update object drag - Fix regression bug ctrl+drag not working to drag copies of edge or face brep sub objects<br />
<br />
Add Ctrl+tab shortcut key. Puts focus in XYZ input always, doesn't go to input fields in command ui area.<br />
<br />
Fix Chamfer regression - Fix Chamfer regression introduced in v4 when making chamfer surfaces to be analytic plane objects. Fix bug in analytic plane/plane intersection that was causing chamfer to fail when 2 chamfer planes intersected each other.<br />
<br />
Update DXF export. Don't mess with handle values of DimStyle entries already in the template file. Fixes AutoCAD generating an error when trying to copy objects to the clipboard after opening a DXF file from MoI. Fixes a bug reported by Tim on the forum here:<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=10683.1<br />
<br />
Update grid display - axis labels. Support custom axis labels for grid axis colors. Fixes bug reported in forum by Dinos here:<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=10652.61<br />
<br />
Update Windows installer. Add file association for SVG format and set file association information to be removed from registry on uninstall.<br />
<br />
Themes - Add Terminal Green theme.<br />
<br />
Update Theme UI reload. Fix crash bug when editing theme viewport brightness with MiniSidePane.js startup script. Fixes a crash reported through e-mail by James Elliott.<br />
<br />
Fix unicode text theme bug. After processing theme defines, prefix .htm loaded data with a UTF8 byte order mark so the html parser will handle it as UTF8 content. Fixes a bug with translated plugins reported through e-mail by Pilou.<br />
<br />
Update 3DM import from SpaceClaim. If a 3DM file comes from SpaceClaim, look for any faces that hae very large underlying surfaces and shrink those down. Fixes a 3DM import problem reported by Tolya Vozya on the forum at:<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=10664.1<br />
<br />
</div></div>Michael Gibsonhttp://moi3d.com/wiki/index.php?title=V5Beta&diff=1024V5Beta2022-05-28T22:47:55Z<p>Michael Gibson: </p>
<hr />
<div><big>Release notes for each V5 beta release are gathered here.</big><br />
<br />
== Apr-10-2022 ==<br />
<br />
[http://moi3d.com/forum/index.php?webtag=MOI&msg=10652.1 Forum announcement]<br />
<br />
<div style="width: 700px">New stuff:<br />
<br />
Dark UI theme and theme editor available under Options &gt; General &gt; "UI Theme".<br />
<br />
Groups - create a group using the menu on the "Objects" section of the Scene Browser.<br />
<br />
Types section of the Scene Browser has additional sub types like "Types &gt; Curves &gt; Circles" can be used to target just curves that are circles.<br />
Sub types include:<br/><br />
&nbsp;&nbsp;&nbsp;&nbsp;Curves &gt; Open, Closed, Planar, Lines, Polylines, Circles, Arcs, Ellipses, Elliptical arcs<br/><br />
&nbsp;&nbsp;&nbsp;&nbsp;Surfaces &gt; Planar<br/><br />
&nbsp;&nbsp;&nbsp;&nbsp;Edges &gt; Joined, Naked<br/><br />
&nbsp;&nbsp;&nbsp;&nbsp;Properties &gt; Selected, Unselected, Locked, Unlocked, Visible, New objects.<br/><br />
<br />
Support for import/export to SVG format.<br />
<br />
SubD conversion now supports FBX format.<br />
<br />
The Mac version is now a universal binary that contains code for both Intel and M1 CPU architectures.<br />
<br />
Added File &gt; Notes button for setting text notes that are saved inside of a .3dm file.<br />
<br />
Scene browser - click on text label of an item in the Objects section of the scene browser to assign current selection to a name or group.<br />
<br />
Annotation text display engine performance - Hoist several Qt text layout calls up to layout time rather than calling at render time. Major improvement to render performance for text. Also if model units sized text is small on screen render as a textured quad instead of using text geometry.<br />
<br />
Scene browser - Add "Unnamed" entry under Objects to allow targeting of all objects without a name.<br />
<br />
Update STEP export - split closed surfaces Default is on, can be set in moi.ini under:<br/><br />
[STEP]<br/><br />
ExportSplitClosedSurfaces=n<br />
<br />
Update tab controls - Add dot to active tab.<br />
<br />
New rendering platforms - support for Direct3D9 on Windows and Metal on Mac. Can be set in moi.ini under [View] GraphicsAPI=Direct3D9 or GraphicsAPI=Metal . If you are having problems with a particular video driver you can try using one of these alternatives.<br />
<br />
Added experimental ViewProject command that transforms objects by a perspective projection.<br />
<br />
Support clipboard copy/paste of SVG format. To copy to the clipboard using SVG format, set up a shortcut key with this:<br/><br />
script: moi.geometryDatabase.copyToClipboardSVG();<br />
<br />
Update default render engine on Wine - Default to Direct3D11 on Wine instead of OpenGL. Wine seems to compensate for various driver bugs in its Direct3D layer.<br />
<br />
Update text rendering under Wine. Wine seems to have a bug in ID3D11DeviceContext::UpdateSubresource when it's being applied to an 8-bit luminance texture. When running under Wine use a 32-bit texture format for the text texture to avoid running into this.<br />
<br />
Fix Mac version bug where doing a double right click could get stuck in a loop if there was a file dialog being shown after the double right click happened.<br />
<br />
Fix crash bug in Extrude when extruding a curve with a large number of segments and with particular weight values. Fixes a bug reported by Scott Carson in e-mail.<br />
<br />
Fix boolean bug where edges that touched at singularity were being incorrectly merged in boolean union. Fixes a bug reported through e-mail by Christopher Schardt.<br />
<br />
Fix boolean problem with multi object booleans where tolerance settings were being handled slightly differently when many objects were being booleaned. This could sometimes yield different results when booleaning many objects at once instead of only 2 at a time. Fixes a boolean union bug reported through e-mail by Christopher Schardt.<br />
<br />
Update Mac trackpad/Magic Mouse handling. Give up trying to automatically figure out if a scroll message is coming from Magic Mouse or trackpad it does not appear to be possible to do this reliably. So make Magic Mouse scroll behave same as trackpad scroll, the moi.ini option for doing trackpad scroll as a wheel mouse ([MultiTouch] UseTrackpadScrollAsMouseWheel=y) can be used to get old behavior on Magic Mouse.<br />
Also holding down Alt while doing a trackpad scroll will instead do a wheel zoom now.<br />
There is also a new parameter to reverse scroll/pan: [MultiTouch] ReverseTrackpadScroll=y<br />
<br />
Updated Sweep 2 rails maintain height mode. If the the 2 rails start or end in a point don't disable "Maintain height" for the entire sweep, instead handle the scaling down to a point after the first or last proflie.<br />
<br />
Update background images - Add in moi.ini option to make background image embed turned on by default.<br/><br />
[View]<br/><br />
BackgroundImageEmbedDefault=y<br />
<br />
Update surface/surface intersection - Look for and remove duplicate intersection results. Fixes bug with multiple curve intersection results reported by Przemas in the forum here:<br/><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=10460.1<br />
<br />
Update chamfer command - swap. Add swap button when "Use 2 distances" is active. Requested on the forum by 3image here:<br/><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=10289.37<br />
<br />
Update mesh export vertex normal combining. Change vertex normal combining to use tolerance of 0.5 degrees instead of 3.0 degrees. It can also be changed now in moi.ini .<br/><br />
[Mesh Export]<br/><br />
UnifyVertexNormalsAngleToleranceDegrees=0.5<br />
<br />
Update background image properties dialog - add width/height fields. Requested by moritz on the forum here:<br/><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=10289.29<br />
<br />
Update text selection. Fix problem where text selection was lost when swiping a selection and releasing mouse button off of the UIPanel window.<br />
<br />
Update selection - multiple select. If multiple select only with shift key is enabled don't clear selection if ctrl is down so that Ctrl+drag will still work as a deselection window. Fixes bug reported on the forum by Viewbyte here:<br/><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=10439.3<br />
<br />
Update DXF import - fix LWPOLYLINE import 16 bit overflow crash bug reported through e-mail by Jörg Vollmer.<br />
<br />
Update curve drawing corners - Make the current active point in curve drawing be shown as a corner if ctrl is down. Previously it would only show as a corner after it was picked.<br />
<br />
Update STEP import - FACETED_BREP entities. v3 would read FACETED_BREP entities but this was lost in v4 with the restructuring to use multiple threads. Process these now, fixes v3/v4 regression reported on the forum by Martin here:<br/><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=10415.7<br />
<br />
Update Flow. Sew edges for flow result so a closed tube will have start/end edges joined to make a solid.<br />
<br />
Update ArcCenter command - int snap. Enable radial intersection snap point for ArcCenter command. Fixes a bug reported by Andre in the forum here:<br/><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=10399.1<br />
<br />
Fix transform regression. Fix regression where invalidating hit test map on selection change (change near the end of v4 beta) was causing transforms like object drag to regenerate the hit test map on every mousemove. Fixes a performance regression reported through e-mail by Massimo.<br />
<br />
Add option for grid opacity in moi.ini under [Grid] GridOpacity=255<br />
<br />
Update relative expressions. Add in percent relative expression, so you can put in 120% into a distance field to alter the current value.<br />
<br />
Fixes for running on Mac with case sensitive filesystem.<br />
<br />
Update Loft with loft style = straight. Loft with loft style = straight would generate longer faces in coplanar segments. Fixes bug reported by Ed Ferguson in the forum here:<br/><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=10160.1<br />
<br />
Update Merge command. Process curves with Merge command - will merge G1 segments together.<br />
<br />
Various other minor bug fixes.<br />
<br />
<br />
<b>Scripting:</b><br />
<br />
Updated FilesystemObjectModel::getFiles() - Added optional 3rd parameter to recurse subdirectories.<br />
<br />
Added annotationFrame property to annotation objects so that a script can get an annotation object's plane.<br />
<br />
Edit points scripting - Add scripting interface on objects for:<br/><br />
&nbsp;&nbsp;&nbsp;&nbsp;obj.hasEditPoints - read-only property true if object has edit points, false if not.<br/><br />
&nbsp;&nbsp;&nbsp;&nbsp;obj.hasSelectedEditPoints - read-only property true if object has any selected edit points.<br/><br />
&nbsp;&nbsp;&nbsp;&nbsp;obj.numEditPoints - read-only property for number of edit points.<br/><br />
&nbsp;&nbsp;&nbsp;&nbsp;obj.getEditPoint( index ) - method that returns an x,y,z point for the given edit point index.<br/><br />
&nbsp;&nbsp;&nbsp;&nbsp;obj.getEditPointSelected( index ) - method that returns true if the given edit point is selected.<br/><br />
Also fix bug show points not refreshing redraw properly when set through script rather than through the show points command.<br />
<br />
Added isEllipticalArc property for curves and curvesegments.<br />
<br />
Update viewport.interactiveViewChange(). Add optional 2nd parameter to viewport.interactiveViewChange() function to allow a script to use it in a modal fashion. Fix for Ed's script posted on the forum here:<br/><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=10403.1<br />
<br />
Update save file dialog handling. Allow initializing dialog with a directory name, like:<br/><br />
SaveAs c:\output\fbx<br/><br />
When given a directory name the dialog will start out in that directory.<br />
</div><br />
<br />
<br />
== Apr-10-2022 ==<br />
<br />
[http://moi3d.com/forum/index.php?webtag=MOI&msg=10706.1 Forum announcement]<br />
<br />
<div style="width: 700px">This release is primarily bug fixes for various aspects of groups.<br />
<br />
<br />
Update group click selection. If Ctrl is held down, then deselect clicked on group instead of drill in.<br />
<br />
Update ungroup - Fix bug where ungroup didn't go just one step when top level group selected.<br />
<br />
Update group copy to clipboard - fix copy to clipboard with group sub object selected<br />
<br />
Update groups window selection. Ctrl+window select was not deselecting the full group when there was no drill in, was only deselecting sub objects. Fixed so that Ctrl+window select targets entire group if no drill in selection. If there is any drill in then leaf nodes will still be targeted instead.<br />
<br />
Add Group label in object type indicator in properties panel.<br />
<br />
Update Scene Browser groups - If an object is inside of a selected group, make it count as selected for displaying selection dot in Types and Styles sections.<br />
<br />
Update detailed object properties dialog for groups - report number of group children.<br />
<br />
Fix bug with groups in detailed object properties dialog showing the style of group objects instead of the group's children and not listing the styles when there are multiple styles in the group.<br />
<br />
Update Project command group processing<br />
<br />
Update select all for groups<br />
<br />
Update moi.geometrydatabase.selectLoop() to work with groups<br />
<br />
Update invert selection for groups<br />
<br />
Fix bug with groups with edit points on. When group was selected, dragging on edit point didn't work, whole group was being dragged instead.<br />
<br />
Update Separate command, groups. Make objects being separated break out from groups.<br />
<br />
Fix bug where drag point on curve would break modified object out of groups.<br />
<br />
Fix problem with group handling for Flow command.<br />
<br />
Fix group bug with ArrayCurve - groups appeared to lose selection when entering path picking stage in ArrayCurve.<br />
<br />
Update scene browser styles for Groups. Tweak styles to not accumulate status for parent group objects, just the contents of the group.<br />
<br />
Update properties panel for groups. Fix assigning style of groups by the properties panel style menu was only setting group parent object style and not child objects.<br />
<br />
<br />
Update radial dimensions. When cross size is set to 0 to disable center point cross lines, don't include radius center point for window selection and bounding box framing. Fixes a bug reported on the forum by Martin here:<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=10652.86<br />
<br />
Update scene browser assigning style - don't modify object hidden or locked state to match existing object states when all current assigned objects were hidden or locked. Can be re-enabled in moi.ini by setting [Scene Browser] AssignStyleAssumeTargetState=y .<br />
<br />
Update object drag - Fix regression bug ctrl+drag not working to drag copies of edge or face brep sub objects<br />
<br />
Add Ctrl+tab shortcut key. Puts focus in XYZ input always, doesn't go to input fields in command ui area.<br />
<br />
Fix Chamfer regression - Fix Chamfer regression introduced in v4 when making chamfer surfaces to be analytic plane objects. Fix bug in analytic plane/plane intersection that was causing chamfer to fail when 2 chamfer planes intersected each other.<br />
<br />
Update DXF export. Don't mess with handle values of DimStyle entries already in the template file. Fixes AutoCAD generating an error when trying to copy objects to the clipboard after opening a DXF file from MoI. Fixes a bug reported by Tim on the forum here:<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=10683.1<br />
<br />
Update grid display - axis labels. Support custom axis labels for grid axis colors. Fixes bug reported in forum by Dinos here:<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=10652.61<br />
<br />
Update Windows installer. Add file association for SVG format and set file association information to be removed from registry on uninstall.<br />
<br />
Themes - Add Terminal Green theme.<br />
<br />
Update Theme UI reload. Fix crash bug when editing theme viewport brightness with MiniSidePane.js startup script. Fixes a crash reported through e-mail by James Elliott.<br />
<br />
Fix unicode text theme bug. After processing theme defines, prefix .htm loaded data with a UTF8 byte order mark so the html parser will handle it as UTF8 content. Fixes a bug with translated plugins reported through e-mail by Pilou.<br />
<br />
Update 3DM import from SpaceClaim. If a 3DM file comes from SpaceClaim, look for any faces that hae very large underlying surfaces and shrink those down. Fixes a 3DM import problem reported by Tolya Vozya on the forum at:<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=10664.1<br />
<br />
</div></div>Michael Gibsonhttp://moi3d.com/wiki/index.php?title=V5Beta&diff=1023V5Beta2022-05-23T06:17:21Z<p>Michael Gibson: /* Apr-10-2022 */</p>
<hr />
<div><big>Release notes for each V5 beta release are gathered here.</big><br />
<br />
== Apr-10-2022 ==<br />
<br />
[http://moi3d.com/forum/index.php?webtag=MOI&msg=10652.1 Forum announcement]<br />
<br />
<div style="width: 700px">New stuff:<br />
<br />
Dark UI theme and theme editor available under Options &gt; General &gt; "UI Theme".<br />
<br />
Groups - create a group using the menu on the "Objects" section of the Scene Browser.<br />
<br />
Types section of the Scene Browser has additional sub types like "Types &gt; Curves &gt; Circles" can be used to target just curves that are circles.<br />
Sub types include:<br/><br />
&nbsp;&nbsp;&nbsp;&nbsp;Curves &gt; Open, Closed, Planar, Lines, Polylines, Circles, Arcs, Ellipses, Elliptical arcs<br/><br />
&nbsp;&nbsp;&nbsp;&nbsp;Surfaces &gt; Planar<br/><br />
&nbsp;&nbsp;&nbsp;&nbsp;Edges &gt; Joined, Naked<br/><br />
&nbsp;&nbsp;&nbsp;&nbsp;Properties &gt; Selected, Unselected, Locked, Unlocked, Visible, New objects.<br/><br />
<br />
Support for import/export to SVG format.<br />
<br />
SubD conversion now supports FBX format.<br />
<br />
The Mac version is now a universal binary that contains code for both Intel and M1 CPU architectures.<br />
<br />
Added File &gt; Notes button for setting text notes that are saved inside of a .3dm file.<br />
<br />
Scene browser - click on text label of an item in the Objects section of the scene browser to assign current selection to a name or group.<br />
<br />
Annotation text display engine performance - Hoist several Qt text layout calls up to layout time rather than calling at render time. Major improvement to render performance for text. Also if model units sized text is small on screen render as a textured quad instead of using text geometry.<br />
<br />
Scene browser - Add "Unnamed" entry under Objects to allow targeting of all objects without a name.<br />
<br />
Update STEP export - split closed surfaces Default is on, can be set in moi.ini under:<br/><br />
[STEP]<br/><br />
ExportSplitClosedSurfaces=n<br />
<br />
Update tab controls - Add dot to active tab.<br />
<br />
New rendering platforms - support for Direct3D9 on Windows and Metal on Mac. Can be set in moi.ini under [View] GraphicsAPI=Direct3D9 or GraphicsAPI=Metal . If you are having problems with a particular video driver you can try using one of these alternatives.<br />
<br />
Added experimental ViewProject command that transforms objects by a perspective projection.<br />
<br />
Support clipboard copy/paste of SVG format. To copy to the clipboard using SVG format, set up a shortcut key with this:<br/><br />
script: moi.geometryDatabase.copyToClipboardSVG();<br />
<br />
Update default render engine on Wine - Default to Direct3D11 on Wine instead of OpenGL. Wine seems to compensate for various driver bugs in its Direct3D layer.<br />
<br />
Update text rendering under Wine. Wine seems to have a bug in ID3D11DeviceContext::UpdateSubresource when it's being applied to an 8-bit luminance texture. When running under Wine use a 32-bit texture format for the text texture to avoid running into this.<br />
<br />
Fix Mac version bug where doing a double right click could get stuck in a loop if there was a file dialog being shown after the double right click happened.<br />
<br />
Fix crash bug in Extrude when extruding a curve with a large number of segments and with particular weight values. Fixes a bug reported by Scott Carson in e-mail.<br />
<br />
Fix boolean bug where edges that touched at singularity were being incorrectly merged in boolean union. Fixes a bug reported through e-mail by Christopher Schardt.<br />
<br />
Fix boolean problem with multi object booleans where tolerance settings were being handled slightly differently when many objects were being booleaned. This could sometimes yield different results when booleaning many objects at once instead of only 2 at a time. Fixes a boolean union bug reported through e-mail by Christopher Schardt.<br />
<br />
Update Mac trackpad/Magic Mouse handling. Give up trying to automatically figure out if a scroll message is coming from Magic Mouse or trackpad it does not appear to be possible to do this reliably. So make Magic Mouse scroll behave same as trackpad scroll, the moi.ini option for doing trackpad scroll as a wheel mouse ([MultiTouch] UseTrackpadScrollAsMouseWheel=y) can be used to get old behavior on Magic Mouse.<br />
Also holding down Alt while doing a trackpad scroll will instead do a wheel zoom now.<br />
There is also a new parameter to reverse scroll/pan: [MultiTouch] ReverseTrackpadScroll=y<br />
<br />
Updated Sweep 2 rails maintain height mode. If the the 2 rails start or end in a point don't disable "Maintain height" for the entire sweep, instead handle the scaling down to a point after the first or last proflie.<br />
<br />
Update background images - Add in moi.ini option to make background image embed turned on by default.<br/><br />
[View]<br/><br />
BackgroundImageEmbedDefault=y<br />
<br />
Update surface/surface intersection - Look for and remove duplicate intersection results. Fixes bug with multiple curve intersection results reported by Przemas in the forum here:<br/><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=10460.1<br />
<br />
Update chamfer command - swap. Add swap button when "Use 2 distances" is active. Requested on the forum by 3image here:<br/><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=10289.37<br />
<br />
Update mesh export vertex normal combining. Change vertex normal combining to use tolerance of 0.5 degrees instead of 3.0 degrees. It can also be changed now in moi.ini .<br/><br />
[Mesh Export]<br/><br />
UnifyVertexNormalsAngleToleranceDegrees=0.5<br />
<br />
Update background image properties dialog - add width/height fields. Requested by moritz on the forum here:<br/><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=10289.29<br />
<br />
Update text selection. Fix problem where text selection was lost when swiping a selection and releasing mouse button off of the UIPanel window.<br />
<br />
Update selection - multiple select. If multiple select only with shift key is enabled don't clear selection if ctrl is down so that Ctrl+drag will still work as a deselection window. Fixes bug reported on the forum by Viewbyte here:<br/><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=10439.3<br />
<br />
Update DXF import - fix LWPOLYLINE import 16 bit overflow crash bug reported through e-mail by Jörg Vollmer.<br />
<br />
Update curve drawing corners - Make the current active point in curve drawing be shown as a corner if ctrl is down. Previously it would only show as a corner after it was picked.<br />
<br />
Update STEP import - FACETED_BREP entities. v3 would read FACETED_BREP entities but this was lost in v4 with the restructuring to use multiple threads. Process these now, fixes v3/v4 regression reported on the forum by Martin here:<br/><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=10415.7<br />
<br />
Update Flow. Sew edges for flow result so a closed tube will have start/end edges joined to make a solid.<br />
<br />
Update ArcCenter command - int snap. Enable radial intersection snap point for ArcCenter command. Fixes a bug reported by Andre in the forum here:<br/><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=10399.1<br />
<br />
Fix transform regression. Fix regression where invalidating hit test map on selection change (change near the end of v4 beta) was causing transforms like object drag to regenerate the hit test map on every mousemove. Fixes a performance regression reported through e-mail by Massimo.<br />
<br />
Add option for grid opacity in moi.ini under [Grid] GridOpacity=255<br />
<br />
Update relative expressions. Add in percent relative expression, so you can put in 120% into a distance field to alter the current value.<br />
<br />
Fixes for running on Mac with case sensitive filesystem.<br />
<br />
Update Loft with loft style = straight. Loft with loft style = straight would generate longer faces in coplanar segments. Fixes bug reported by Ed Ferguson in the forum here:<br/><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=10160.1<br />
<br />
Update Merge command. Process curves with Merge command - will merge G1 segments together.<br />
<br />
Various other minor bug fixes.<br />
<br />
<br />
<b>Scripting:</b><br />
<br />
Updated FilesystemObjectModel::getFiles() - Added optional 3rd parameter to recurse subdirectories.<br />
<br />
Added annotationFrame property to annotation objects so that a script can get an annotation object's plane.<br />
<br />
Edit points scripting - Add scripting interface on objects for:<br/><br />
&nbsp;&nbsp;&nbsp;&nbsp;obj.hasEditPoints - read-only property true if object has edit points, false if not.<br/><br />
&nbsp;&nbsp;&nbsp;&nbsp;obj.hasSelectedEditPoints - read-only property true if object has any selected edit points.<br/><br />
&nbsp;&nbsp;&nbsp;&nbsp;obj.numEditPoints - read-only property for number of edit points.<br/><br />
&nbsp;&nbsp;&nbsp;&nbsp;obj.getEditPoint( index ) - method that returns an x,y,z point for the given edit point index.<br/><br />
&nbsp;&nbsp;&nbsp;&nbsp;obj.getEditPointSelected( index ) - method that returns true if the given edit point is selected.<br/><br />
Also fix bug show points not refreshing redraw properly when set through script rather than through the show points command.<br />
<br />
Added isEllipticalArc property for curves and curvesegments.<br />
<br />
Update viewport.interactiveViewChange(). Add optional 2nd parameter to viewport.interactiveViewChange() function to allow a script to use it in a modal fashion. Fix for Ed's script posted on the forum here:<br/><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=10403.1<br />
<br />
Update save file dialog handling. Allow initializing dialog with a directory name, like:<br/><br />
SaveAs c:\output\fbx<br/><br />
When given a directory name the dialog will start out in that directory.<br />
</div></div>Michael Gibsonhttp://moi3d.com/wiki/index.php?title=V5Beta&diff=1022V5Beta2022-04-16T20:10:19Z<p>Michael Gibson: </p>
<hr />
<div><big>Release notes for each V5 beta release are gathered here.</big><br />
<br />
== Apr-10-2022 ==<br />
<br />
[http://moi3d.com/forum/index.php?webtag=MOI&msg=10652.1 Forum announcement]<br />
<br />
<div style="width: 700px">New stuff:<br />
<br />
Dark UI theme and theme editor available under Options &gt; General &gt; "UI Theme".<br />
<br />
Groups - create a group using the menu on the "Objects" section of the Scene Browser.<br />
<br />
Types section of the Scene Browser has additional sub types like "Types &gt; Curves &gt; Circles" can be used to target just curves that are circles.<br />
Sub types include:<br/><br />
&nbsp;&nbsp;&nbsp;&nbsp;Curves &gt; Open, Closed, Planar, Lines, Polylines, Circles, Arcs, Ellipses, Elliptical arcs<br/><br />
&nbsp;&nbsp;&nbsp;&nbsp;Surfaces &gt; Planar<br/><br />
&nbsp;&nbsp;&nbsp;&nbsp;Edges &gt; Joined, Naked<br/><br />
&nbsp;&nbsp;&nbsp;&nbsp;Properties &gt; Selected, Unselected, Locked, Unlocked, Visible, New objects.<br/><br />
<br />
Support for import/export to SVG format.<br />
<br />
SubD conversion now supports FBX format.<br />
<br />
The Mac version is now a universal binary that contains code for both Intel and M1 CPU architectures.<br />
<br />
Added File &gt; Notes button for setting text notes that are saved inside of a .3dm file.<br />
<br />
Scene browser - click on text label of an item in the Objects section of teh scene browser to assign current selection to a name or group.<br />
<br />
Annotation text display engine performance - Hoist several Qt text layout calls up to layout time rather than calling at render time. Major improvement to render performance for text. Also if model units sized text is small on screen render as a textured quad instead of using text geometry.<br />
<br />
Scene browser - Add "Unnamed" entry under Objects to allow targeting of all objects without a name.<br />
<br />
Update STEP export - split closed surfaces Default is on, can be set in moi.ini under:<br/><br />
[STEP]<br/><br />
ExportSplitClosedSurfaces=n<br />
<br />
Update tab controls - Add dot to active tab.<br />
<br />
New rendering platforms - support for Direct3D9 on Windows and Metal on Mac. Can be set in moi.ini under [View] GraphicsAPI=Direct3D9 or GraphicsAPI=Metal . If you are having problems with a particular video driver you can try using one of these alternatives.<br />
<br />
Added experimental ViewProject command that transforms objects by a perspective projection.<br />
<br />
Support clipboard copy/paste of SVG format. To copy to the clipboard using SVG format, set up a shortcut key with this:<br/><br />
script: moi.geometryDatabase.copyToClipboardSVG();<br />
<br />
Update default render engine on Wine - Default to Direct3D11 on Wine instead of OpenGL. Wine seems to compensate for various driver bugs in its Direct3D layer.<br />
<br />
Update text rendering under Wine. Wine seems to have a bug in ID3D11DeviceContext::UpdateSubresource when it's being applied to an 8-bit luminance texture. When running under Wine use a 32-bit texture format for the text texture to avoid running into this.<br />
<br />
Fix Mac version bug where doing a double right click could get stuck in a loop if there was a file dialog being shown after the double right click happened.<br />
<br />
Fix crash bug in Extrude when extruding a curve with a large number of segments and with particular weight values. Fixes a bug reported by Scott Carson in e-mail.<br />
<br />
Fix boolean bug where edges that touched at singularity were being incorrectly merged in boolean union. Fixes a bug reported through e-mail by Christopher Schardt.<br />
<br />
Fix boolean problem with multi object booleans where tolerance settings were being handled slightly differently when many objects were being booleaned. This could sometimes yield different results when booleaning many objects at once instead of only 2 at a time. Fixes a boolean union bug reported through e-mail by Christopher Schardt.<br />
<br />
Update Mac trackpad/Magic Mouse handling. Give up trying to automatically figure out if a scroll message is coming from Magic Mouse or trackpad it does not appear to be possible to do this reliably. So make Magic Mouse scroll behave same as trackpad scroll, the moi.ini option for doing trackpad scroll as a wheel mouse ([MultiTouch] UseTrackpadScrollAsMouseWheel=y) can be used to get old behavior on Magic Mouse.<br />
Also holding down Alt while doing a trackpad scroll will instead do a wheel zoom now.<br />
There is also a new parameter to reverse scroll/pan: [MultiTouch] ReverseTrackpadScroll=y<br />
<br />
Updated Sweep 2 rails maintain height mode. If the the 2 rails start or end in a point don't disable "Maintain height" for the entire sweep, instead handle the scaling down to a point after the first or last proflie.<br />
<br />
Update background images - Add in moi.ini option to make background image embed turned on by default.<br/><br />
[View]<br/><br />
BackgroundImageEmbedDefault=y<br />
<br />
Update surface/surface intersection - Look for and remove duplicate intersection results. Fixes bug with multiple curve intersection results reported by Przemas in the forum here:<br/><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=10460.1<br />
<br />
Update chamfer command - swap. Add swap button when "Use 2 distances" is active. Requested on the forum by 3image here:<br/><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=10289.37<br />
<br />
Update mesh export vertex normal combining. Change vertex normal combining to use tolerance of 0.5 degrees instead of 3.0 degrees. It can also be changed now in moi.ini .<br/><br />
[Mesh Export]<br/><br />
UnifyVertexNormalsAngleToleranceDegrees=0.5<br />
<br />
Update background image properties dialog - add width/height fields. Requested by moritz on the forum here:<br/><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=10289.29<br />
<br />
Update text selection. Fix problem where text selection was lost when swiping a selection and releasing mouse button off of the UIPanel window.<br />
<br />
Update selection - multiple select. If multiple select only with shift key is enabled don't clear selection if ctrl is down so that Ctrl+drag will still work as a deselection window. Fixes bug reported on the forum by Viewbyte here:<br/><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=10439.3<br />
<br />
Update DXF import - fix LWPOLYLINE import 16 bit overflow crash bug reported through e-mail by Jörg Vollmer.<br />
<br />
Update curve drawing corners - Make the current active point in curve drawing be shown as a corner if ctrl is down. Previously it would only show as a corner after it was picked.<br />
<br />
Update STEP import - FACETED_BREP entities. v3 would read FACETED_BREP entities but this was lost in v4 with the restructuring to use multiple threads. Process these now, fixes v3/v4 regression reported on the forum by Martin here:<br/><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=10415.7<br />
<br />
Update Flow. Sew edges for flow result so a closed tube will have start/end edges joined to make a solid.<br />
<br />
Update ArcCenter command - int snap. Enable radial intersection snap point for ArcCenter command. Fixes a bug reported by Andre in the forum here:<br/><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=10399.1<br />
<br />
Fix transform regression. Fix regression where invalidating hit test map on selection change (change near the end of v4 beta) was causing transforms like object drag to regenerate the hit test map on every mousemove. Fixes a performance regression reported through e-mail by Massimo.<br />
<br />
Add option for grid opacity in moi.ini under [Grid] GridOpacity=255<br />
<br />
Update relative expressions. Add in percent relative expression, so you can put in 120% into a distance field to alter the current value.<br />
<br />
Fixes for running on Mac with case sensitive filesystem.<br />
<br />
Update Loft with loft style = straight. Loft with loft style = straight would generate longer faces in coplanar segments. Fixes bug reported by Ed Ferguson in the forum here:<br/><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=10160.1<br />
<br />
Update Merge command. Process curves with Merge command - will merge G1 segments together.<br />
<br />
Various other minor bug fixes.<br />
<br />
<br />
<b>Scripting:</b><br />
<br />
Updated FilesystemObjectModel::getFiles() - Added optional 3rd parameter to recurse subdirectories.<br />
<br />
Added annotationFrame property to annotation objects so that a script can get an annotation object's plane.<br />
<br />
Edit points scripting - Add scripting interface on objects for:<br/><br />
&nbsp;&nbsp;&nbsp;&nbsp;obj.hasEditPoints - read-only property true if object has edit points, false if not.<br/><br />
&nbsp;&nbsp;&nbsp;&nbsp;obj.hasSelectedEditPoints - read-only property true if object has any selected edit points.<br/><br />
&nbsp;&nbsp;&nbsp;&nbsp;obj.numEditPoints - read-only property for number of edit points.<br/><br />
&nbsp;&nbsp;&nbsp;&nbsp;obj.getEditPoint( index ) - method that returns an x,y,z point for the given edit point index.<br/><br />
&nbsp;&nbsp;&nbsp;&nbsp;obj.getEditPointSelected( index ) - method that returns true if the given edit point is selected.<br/><br />
Also fix bug show points not refreshing redraw properly when set through script rather than through the show points command.<br />
<br />
Added isEllipticalArc property for curves and curvesegments.<br />
<br />
Update viewport.interactiveViewChange(). Add optional 2nd parameter to viewport.interactiveViewChange() function to allow a script to use it in a modal fashion. Fix for Ed's script posted on the forum here:<br/><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=10403.1<br />
<br />
Update save file dialog handling. Allow initializing dialog with a directory name, like:<br/><br />
SaveAs c:\output\fbx<br/><br />
When given a directory name the dialog will start out in that directory.<br />
</div></div>Michael Gibsonhttp://moi3d.com/wiki/index.php?title=V5Beta&diff=1021V5Beta2022-04-16T02:07:24Z<p>Michael Gibson: </p>
<hr />
<div><big>Release notes for each V5 beta release are gathered here.</big><br />
<br />
== Apr-10-2022 ==<br />
<br />
[http://moi3d.com/forum/index.php?webtag=MOI&msg=10652.1 Forum announcement]<br />
<br />
<div style="width: 700px">New stuff:<br />
<br />
Dark UI theme and theme editor available under Options &gt; General &gt; "UI Theme".<br />
<br />
Groups - create a group using the menu on the "Objects" section of the Scene Browser.<br />
<br />
Types section of the Scene Browser has additional sub types like "Types &gt; Curves &gt; Circles" can be used to target just curves that are circles.<br />
Sub types include:<br/><br />
&nbsp;&nbsp;&nbsp;&nbsp;Curves &gt; Open, Closed, Planar, Lines, Polylines, Circles, Arcs, Ellipses, Elliptical arcs<br/><br />
&nbsp;&nbsp;&nbsp;&nbsp;Surfaces &gt; Planar<br/><br />
&nbsp;&nbsp;&nbsp;&nbsp;Edges &gt; Joined, Naked<br/><br />
&nbsp;&nbsp;&nbsp;&nbsp;Properties &gt; Selected, Unselected, Locked, Unlocked, Visible, New objects.<br/><br />
<br />
Support for import/export to SVG format.<br />
<br />
SubD conversion now supports FBX format.<br />
<br />
The Mac version is now a universal binary that contains code for both Intel and M1 CPU architectures.<br />
<br />
Added File &gt; Notes button for setting text notes that are saved inside of a .3dm file.<br />
<br />
Scene browser - click on text label of an item in the Objects section of teh scene browser to assign current selection to a name or group.<br />
<br />
Annotation text display engine performance - Hoist several Qt text layout calls up to layout time rather than calling at render time. Major improvement to render performance for text. Also if model units sized text is small on screen render as a textured quad instead of using text geometry.<br />
<br />
Scene browser - Add "Unnamed" entry under Objects to allow targeting of all objects without a name.<br />
<br />
Update STEP export - split closed surfaces Default is on, can be set in moi.ini under:<br/><br />
[STEP]<br/><br />
ExportSplitClosedSurfaces=n<br />
<br />
Update tab controls - Add dot to active tab.<br />
<br />
New rendering platforms - support for Direct3D9 on Windows and Metal on Mac. Can be set in moi.ini under [View] GraphicsAPI=Direct3D9 or GraphicsAPI=Metal . If you are having problems with a particular video driver you can try using one of these alternatives.<br />
<br />
Added experimental ViewProject command that transforms objects by a perspective projection.<br />
<br />
Support clipboard copy/paste of SVG format. To copy to the clipboard using SVG format, set up a shortcut key with this:<br/><br />
script: moi.geometryDatabase.copyToClipboardSVG();<br />
<br />
Update default render engine on Wine - Default to Direct3D11 on Wine instead of OpenGL. Wine seems to compensate for various driver bugs in its Direct3D layer.<br />
<br />
Update text rendering under Wine. Wine seems to have a bug in ID3D11DeviceContext::UpdateSubresource when it's being applied to an 8-bit luminance texture. When running under Wine use a 32-bit texture format for the text texture to avoid running into this.<br />
<br />
Fix Mac version bug where doing a double right click could get stuck in a loop if there was a file dialog being shown after the double right click happened.<br />
<br />
Fix crash bug in Extrude when extruding a curve with a large number of segments and with particular weight values. Fixes a bug reported by Scott Carson in e-mail.<br />
<br />
Fix boolean bug where edges that touched at singularity were being incorrectly merged in boolean union. Fixes a bug reported through e-mail by Christopher Schardt.<br />
<br />
Fix boolean problem with multi object booleans where tolerance settings were being handled slightly differently when many objects were being booleaned. This could sometimes yield different results when booleaning many objects at once instead of only 2 at a time. Fixes a boolean union bug reported through e-mail by Christopher Schardt.<br />
<br />
Update Mac trackpad/Magic Mouse handling. Give up trying to automatically figure out if a scroll message is coming from Magic Mouse or trackpad it does not appear to be possible to do this reliably. So make Magic Mouse scroll behave same as trackpad scroll, the moi.ini option for doing trackpad scroll as a wheel mouse ([MultiTouch] UseTrackpadScrollAsMouseWheel=y) can be used to get old behavior on Magic Mouse.<br />
Also holding down Alt while doing a trackpad scroll will instead do a wheel zoom now.<br />
There is also a new parameter to reverse scroll/pan: [MultiTouch] ReverseTrackpadScroll=y<br />
<br />
Updated Sweep 2 rails maintain height mode. If the the 2 rails start or end in a point don't disable "Maintain height" for the entire sweep, instead handle the scaling down to a point after the first or last proflie.<br />
<br />
Update background images - Add in moi.ini option to make background image embed turned on by default.<br/><br />
[View]<br/><br />
BackgroundImageEmbedDefault=y<br />
<br />
Update surface/surface intersection - Look for and remove duplicate intersection results. Fixes bug with multiple curve intersection results reported by Przemas in the forum here:<br/><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=10460.1<br />
<br />
Update chamfer command - swap. Add swap button when "Use 2 distances" is active. Requested on the forum by 3image here:<br/><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=10289.37<br />
<br />
Update mesh export vertex normal combining. Change vertex normal combining to use tolerance of 0.5 degrees instead of 3.0 degrees. It can also be changed now in moi.ini .<br/><br />
[Mesh Export]<br/><br />
UnifyVertexNormalsAngleToleranceDegrees=0.5<br />
<br />
Update background image properties dialog - add width/height fields. Requested by moritz on the forum here:<br/><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=10289.29<br />
<br />
Update text selection. Fix problem where text selection was lost when swiping a selection and releasing mouse button off of the UIPanel window.<br />
<br />
Update selection - multiple select. If multiple select only with shift key is enabled don't clear selection if ctrl is down so that Ctrl+drag will still work as a deselection window. Fixes bug reported on the forum by Viewbyte here:<br/><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=10439.3<br />
<br />
Update DXF import - fix LWPOLYLINE import 16 bit overflow crash bug reported through e-mail by Jörg Vollmer.<br />
<br />
Update curve drawing corners - Make the current active point in curve drawing be shown as a corner if ctrl is down. Previously it would only show as a corner after it was picked.<br />
<br />
Update STEP import - FACETED_BREP entities. v3 would read FACETED_BREP entities but this was lost in v4 with the restructuring to use multiple threads. Process these now, fixes v3/v4 regression reported on the forum by Martin here:<br/><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=10415.7<br />
<br />
Update Flow. Sew edges for flow result so a closed tube will have start/end edges joined to make a solid.<br />
<br />
Update ArcCenter command - int snap. Enable radial intersection snap point for ArcCenter command. Fixes a bug reported by Andre in the forum here:<br/><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=10399.1<br />
<br />
Fix transform regression. Fix regression where invalidating hit test map on selection change (change near the end of v4 beta) was causing transforms like object drag to regenerate the hit test map on every mousemove. Fixes a performance regression reported through e-mail by Massimo.<br />
<br />
Add option for grid opacity in moi.ini under [Grid] GridOpacity=255<br />
<br />
Update relative expressions. Add in percent relative expression, so you can put in 120% into a distance field to alter the current value.<br />
<br />
Fixes for running on Mac with case sensitive filesystem.<br />
<br />
Update Loft with loft style = straight. Loft with loft style = straight would generate longer faces in coplanar segments. Fixes bug reported by Ed Ferguson in the forum here:<br/><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=10160.1<br />
<br />
Update Merge command. Process curves with Merge command - will merge G1 segments together.<br />
<br />
Various other minor bug fixes.<br />
<br />
<br />
<b>Scripting:</b><br />
<br />
Updated FilesystemObjectModel::getFiles() - Added optional 3rd parameter to recurse subdirectories.<br />
<br />
Added annotationFrame property to annotation objects so that a script can get an annotation object's plane.<br />
<br />
Edit points scripting - Add scripting interface on objects for:<br/><br />
&nbsp;&nbsp;&nbsp;&nbsp;obj.hasEditPoints - read-only property true if object has edit points, false if not.<br/><br />
&nbsp;&nbsp;&nbsp;&nbsp;obj.hasSelectedEditPoints - read-only property true if object has any selected edit points.<br/><br />
&nbsp;&nbsp;&nbsp;&nbsp;obj.numEditPoints - read-only property for number of edit points.<br/><br />
&nbsp;&nbsp;&nbsp;&nbsp;obj.getEditPoint( index ) - method that returns an x,y,z point for the given edit point index.<br/><br />
&nbsp;&nbsp;&nbsp;&nbsp;obj.getEditPointSelected( index ) - method that returns true if the given edit point is selected.<br/><br />
Also fix bug show points not refreshing redraw properly when set through script rather than through the show points command.<br />
<br />
Update viewport.interactiveViewChange(). Add optional 2nd parameter to viewport.interactiveViewChange() function to allow a script to use it in a modal fashion. Fix for Ed's script posted on the forum here:<br/><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=10403.1<br />
<br />
Update save file dialog handling. Allow initializing dialog with a directory name, like:<br/><br />
SaveAs c:\output\fbx<br/><br />
When given a directory name the dialog will start out in that directory.<br />
</div></div>Michael Gibsonhttp://moi3d.com/wiki/index.php?title=V5Beta&diff=1020V5Beta2022-04-11T09:24:51Z<p>Michael Gibson: /* Apr-9-2022 */</p>
<hr />
<div><big>Release notes for each V5 beta release are gathered here.</big><br />
<br />
== Apr-10-2022 ==<br />
<br />
[http://moi3d.com/forum/index.php?webtag=MOI&msg=10652.1 Forum announcement]</div>Michael Gibsonhttp://moi3d.com/wiki/index.php?title=V5Beta&diff=1019V5Beta2022-04-10T08:59:07Z<p>Michael Gibson: </p>
<hr />
<div><big>Release notes for each V5 beta release are gathered here.</big><br />
<br />
== Apr-9-2022 ==<br />
<br />
[http://moi3d.com/forum/index.php?webtag=MOI&msg=10652.1 Forum announcement]</div>Michael Gibsonhttp://moi3d.com/wiki/index.php?title=V5Beta&diff=1018V5Beta2022-04-10T08:31:01Z<p>Michael Gibson: Created page with "<big>Release notes for each V4 beta release are gathered here.</big> == Apr-9-2022 == [http://moi3d.com/forum/index.php?webtag=MOI&msg=8675.1 Forum announcement]"</p>
<hr />
<div><big>Release notes for each V4 beta release are gathered here.</big><br />
<br />
== Apr-9-2022 ==<br />
<br />
[http://moi3d.com/forum/index.php?webtag=MOI&msg=8675.1 Forum announcement]</div>Michael Gibsonhttp://moi3d.com/wiki/index.php?title=Resources&diff=1015Resources2021-11-08T05:57:10Z<p>Michael Gibson: /* Obj23dmWireframe converter */</p>
<hr />
<div>__NOTOC__<br />
===Links to useful MoI information on the web &nbsp;&nbsp;&nbsp;([[File:fr_flag.png]] [[Resources_%28french%29|French]])===<br />
<br />
<br />
{| style=" width: 80%; border-spacing: 10px; border: 0px; text-align: left; margin-left: auto; margin-right: auto;vertical-align:top;"<br />
|+ <br />
| <b>MOI's site links</b> || <b>External links</b><br />
|- style="vertical-align:top;"<br />
| <br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://moi3d.com MoI home page]<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://moi3d.com/forum MoI discussion forum] <br />
<br />
[[File:Img_wiki_homepage.png|25px]] [[FAQ|Frequently Asked Questions]] <br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://moi3d.com/4.0/docs/moi_help.htm MoI help file online] <br />
([[File:fr_flag.png]][http://moi3d.com/4.0/docs/moi_help_French.htm French]) ([[File:de_flag.png]] [http://moi3d.com/2.0/docs/moi_help_German.htm German]) ([[File:es_flag.png]] [http://moi3d.com/2.0/docs/moi_help_Spanish.htm Spanish]) ([[File:it_flag.png]] [http://moi3d.com/1.0/docs/moi_help_Italian.htm Italian])<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [[Shortcut Keys]]<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [[Hidden Secrets]]<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [[Scripting]] <br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://moi3d.com/forum/index.php?webtag=MOI&msg=7841.6 Burr's script archive - collection of scripts posted on the forum]<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [[V4Beta|V4 Beta release notes]]<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [[Nodeeditor|Node editor plugin]]<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://moi3d.com/4.0/EULA_retail.rtf MoI End User License Agreement]<br />
<br />
| <br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://kyticka.webzdarma.cz/3d/moi/ Petr's MoI page], a variety of informations including scripts and custom commands. ([[File:fr_flag.png]][http://moiscript.weebly.com/ French version])<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://moi.maxsm.net/ Max Smirnov's MoI scripts], numerous advanced scripts from Max.<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://moi.maxsm.net/media/files/ Max's file archive ]([[File:fr_flag.png]][http://moiscript.weebly.com/ French version])<br />
<br />
|}<br />
<br />
{| style=" width: 80%; border-spacing: 10px; border: 0px; text-align: left; margin-left: auto; margin-right: auto;vertical-align:top;"<br />
|+ <br />
| <b>Language packs:</b><br />
|- style="vertical-align:top;"<br />
|[[File:fr_flag.png]] [http://moi3d.com/4.0/docs/moi_help_French.zip French v4 update]<br />
<br />
[[File:es_flag.png]] [http://moi3d.com/2.0/docs/v2_Spanish_update.zip Spanish v2 update]&nbsp;&nbsp;<br />
<br />
[[File:it_flag.png]] [http://moi3d.com/1.0/docs/Italian_language_pack.zip Italian UI and help file]&nbsp;&nbsp;<br />
|<br />
[[File:fr_flag.png]] [http://moi3d.com/2.0/docs/french_command_reference_update.zip French v2 update]&nbsp;&nbsp;<br />
<br />
[[File:de_flag.png]] [http://moi3d.com/2.0/docs/v2_German_update.zip German v2 update]&nbsp;&nbsp;<br />
|}<br />
<br />
== Tutorials ==<br />
{| style=" width: 80%; border-spacing: 10px; border: 0px; text-align: left; margin-left: auto; margin-right: auto;vertical-align:top;"<br />
|+ <br />
| <br />
|- style="vertical-align:top;"<br />
|<br />
[[File:Img_wiki_homepage.png|25px]] [http://moi3d.com/3.0/docs/tutorials.htm MoI documentation video tutorials]<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [https://gumroad.com/l/vavRq MoI Basics video tutorial ]by Bojan Koturanović - 7 hours $25 on Gumroad<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [https://www.youtube.com/playlist?list=PLu-75I3Zd8NS0AH3O75nOuerVz9O1rTUI Tutorials on YouTube ]by Liminal4D<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://moi3d.com/forum/index.php?webtag=MOI&msg=9816.1 48 German language video tutorials ] [[File:de_flag.png]] by Stefan Schneller on jewelry design<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://moi3d.com/download/Moi3d-Overview.pdf Introduction and overview PDF ]by Fabien Franzen<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://moi3d.com/forum/index.php?webtag=MOI&msg=7389.1 Sub-d car modeling in MoI ]by Ed Ferguson<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://moi3d.com/forum/index.php?webtag=MOI&msg=9899.1 Custom truck tutorial ]by Ed Ferguson<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://www.k4icy.com/tutorials.html Tutorials] by Mike Maynard, ( [[File:fr_flag.png]] [http://moiscript.weebly.com/ 18 of them in French ] by Pilou)<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://moi3d.com/forum/index.php?webtag=MOI&msg=284.1 Ring tutorial] by Jesse Kaufman, and [http://moi3d.com/forum/index.php?webtag=MOI&msg=510.5 #2], [http://moi3d.com/forum/index.php?webtag=MOI&msg=623.1 #3], <br />
[http://moi3d.com/forum/index.php?webtag=MOI&msg=556.1 #4],<br />
[http://moi3d.com/forum/index.php?webtag=MOI&msg=538.6 #5],<br />
[http://moi3d.com/forum/index.php?webtag=MOI&msg=536.1 #6]<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://moi3d.com/forum/index.php?webtag=MOI&msg=1175.3 Simple ring using rail revolve], <br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://moi3d.com/forum/index.php?webtag=MOI&msg=1175.5 Simple ring using sweep + scaling rail for more control]<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://moi3d.com/forum/index.php?webtag=MOI&msg=1057.1 Product design forums modeling challenges] <br />
<small>(not specific to MoI but useful for general CAD modeling strategy).</small><br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://moi3d.com/forum/index.php?webtag=MOI&msg=606.4 Simple Intarsia type design]<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://moi3d.com/forum/index.php?webtag=MOI&msg=1171.2 Creating a 3-toed base foot]<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://vimeo.com/30168354 Flow workflow video ]from danperk<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://3dcncguitars.com/ Tutorials for guitar modeling in MoI and Rhino and CNC production]<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://moi3d.com/forum/index.php?webtag=MOI&msg=8845.16 Car modeling techniques] by Zarkow, and [http://moi3d.com/forum/index.php?webtag=MOI&msg=8845.5 #2] and [http://moi3d.com/forum/index.php?webtag=MOI&msg=9956.1 video tutorials]<br />
<br />
<br />
<br />
|<br />
[[File:Img_wiki_homepage.png|25px]] [https://gumroad.com/l/fGqqS MoI for Game Assets video tutorial] by Arrimus 3D - 5 hours $9.99 on Gumroad<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://moiusers.blogspot.com/ Introductory videos ]by Tom Meeks - videos with narration covering a lot of basics.<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://moi3d.com/forum/index.php?webtag=MOI&msg=6058.1 Videos from Andrei Samardac]<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://moi3d.com/forum/index.php?webtag=MOI&msg=3842.1 Video on modeling a SpacePilot controller] from lyes <br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://vimeo.com/channels/moi3d Vimeo channel with tutorials] from lyes<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://bitreality.blogspot.com/ Joe's classical column video tutorials]<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://moi3d.com/forum/index.php?webtag=MOI&msg=402.9 Japanese bathtub tutorial]<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://moi3d.com/forum/index.php?webtag=MOI&msg=446.17 Object repair tutorial]<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://moi3d.com/forum/index.php?webtag=MOI&msg=2546.1 Ferrari 599 GTB tutorial videos ]by lyes<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://moi3d.com/forum/index.php?webtag=MOI&msg=2429.1 Snowman figure ]by PaQ<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://cid-30cffdfa97399495.skydrive.live.com/self.aspx/.Public/Accurate|_Tapers|_MoI|_V2.zip Accurate tapers using Expressions] by Danny <br />
<small>(Not really needed since Extrude now has a taper function good if you want to learn basic trig) D.T.</small><br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://moi3d.com/forum/index.php?webtag=MOI&msg=3814.1 Discussions on ship hull techniques]<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://moiscript.weebly.com/ Videos: Functions of the Manual] by Pilou ( [[File:fr_flag.png]] in French)<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://vimeo.com/30765016 Making accurate screw threads video] from OSTexo<br />
<br />
[[File:Img_wiki_homepage.png|25px]] Scooter tutorial from Mauro:&nbsp;&nbsp;&nbsp;&nbsp;[https://www.youtube.com/channel/UCq79CeWFi9yOjkXxYjF7n4A YouTube channel]&nbsp;&nbsp;&nbsp;&nbsp;[http://moi3d.com/forum/index.php?webtag=MOI&msg=9790.1 Forum post]<br />
<br />
|}<br />
<br />
== Helper programs ==<br />
Some standalone small programs to help accomplish specific tasks.<br />
<br />
=== Rhino6/7 3DM file format to Rhino5 3DM file format (MOI3D compatible) converter ===<br />
[https://moi3d.com/download/Convert3DMToRhinoV5_win.zip Download Convert3DMToRhinoV5 converter for Windows]<br />
<br />
[https://moi3d.com/download/Convert3DMToRhinoV5_mac.zip Download Convert3DMToRhinoV5 converter for Mac]<br />
<br />
<br />
=== Obj23dmWireframe converter ===<br />
[https://moi3d.com/download/Obj23dmWireframe.zip Download Obj23dmWireframe converter for Windows]<br />
<br />
[https://moi3d.com/download/Obj23dmWireframe.app.zip Download Obj23dmWireframe converter for Mac]<br />
<br />
This enables bringing polygon data in an .obj file into MoI to use as a construction guide.<br />
Unzip it to some folder, and then you can run the Obj23dmWireframe.exe program. It will prompt you for the name of an .obj file to read, and after that the name of a .3dm file to create. It will read all the polygon data from the obj file and convert the edges of polygons into line segments, and then write those line segments to the 3dm file. You can then load that 3dm file into MoI and use those line segments to snap on to. Originally posted on the forum [http://moi3d.com/forum/index.php?webtag=MOI&msg=1099.1 here].<br />
<br />
=== MergeOBJ utility ===<br />
[http://moi3d.com/download/MergeOBJ.exe Download MergeOBJ utility]<br />
<br />
This utility program can combine several input OBJ files into one single OBJ file. This may be useful if you want to build up a set of different OBJ files possibly by exporting pieces with different mesh settings, and then combine them into one OBJ file if your target program wants to work with only a single file. This was created because the freely available mesh editing tools have a tendency to remove vertex normals when combining files together, this utility will preserve vertex normals. Announced on the forum [http://moi3d.com/forum/index.php?webtag=MOI&msg=3570.12 here].<br />
<br />
=== Old utilities ===<br />
[http://moi3d.com/download/3dmCurves2DXF.zip 3dmCurves2DXF converter] - This could convert curves in a 3DM file to a DXF file to be used for CAM programs. It's not needed anymore since MoI v3 now directly supports DXF file export.<br><br><br />
These utilities were to help with MoI v1 which did not export material assignments to OBJ files. Since MoI v2 can control material assignments by assigning Styles, these are no longer necessary but are still included here for v1 users.<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;[http://moi3d.com/download/SeparateOBJ.zip SeparateOBJ editor] - Breaks an OBJ file exported from MoI v1 into smaller pieces and puts separate material assignments on each piece for import into programs that require that.<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;[http://moi3d.com/download/MergeOBJ_old.zip MergeOBJ editor (old version)] - Edits an OBJ file to combine all the different objects in it into one single object so there will be just one material for the whole thing.</div>Michael Gibsonhttp://moi3d.com/wiki/index.php?title=Resources&diff=1014Resources2021-11-08T05:56:19Z<p>Michael Gibson: /* Obj23dmWireframe converter */</p>
<hr />
<div>__NOTOC__<br />
===Links to useful MoI information on the web &nbsp;&nbsp;&nbsp;([[File:fr_flag.png]] [[Resources_%28french%29|French]])===<br />
<br />
<br />
{| style=" width: 80%; border-spacing: 10px; border: 0px; text-align: left; margin-left: auto; margin-right: auto;vertical-align:top;"<br />
|+ <br />
| <b>MOI's site links</b> || <b>External links</b><br />
|- style="vertical-align:top;"<br />
| <br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://moi3d.com MoI home page]<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://moi3d.com/forum MoI discussion forum] <br />
<br />
[[File:Img_wiki_homepage.png|25px]] [[FAQ|Frequently Asked Questions]] <br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://moi3d.com/4.0/docs/moi_help.htm MoI help file online] <br />
([[File:fr_flag.png]][http://moi3d.com/4.0/docs/moi_help_French.htm French]) ([[File:de_flag.png]] [http://moi3d.com/2.0/docs/moi_help_German.htm German]) ([[File:es_flag.png]] [http://moi3d.com/2.0/docs/moi_help_Spanish.htm Spanish]) ([[File:it_flag.png]] [http://moi3d.com/1.0/docs/moi_help_Italian.htm Italian])<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [[Shortcut Keys]]<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [[Hidden Secrets]]<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [[Scripting]] <br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://moi3d.com/forum/index.php?webtag=MOI&msg=7841.6 Burr's script archive - collection of scripts posted on the forum]<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [[V4Beta|V4 Beta release notes]]<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [[Nodeeditor|Node editor plugin]]<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://moi3d.com/4.0/EULA_retail.rtf MoI End User License Agreement]<br />
<br />
| <br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://kyticka.webzdarma.cz/3d/moi/ Petr's MoI page], a variety of informations including scripts and custom commands. ([[File:fr_flag.png]][http://moiscript.weebly.com/ French version])<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://moi.maxsm.net/ Max Smirnov's MoI scripts], numerous advanced scripts from Max.<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://moi.maxsm.net/media/files/ Max's file archive ]([[File:fr_flag.png]][http://moiscript.weebly.com/ French version])<br />
<br />
|}<br />
<br />
{| style=" width: 80%; border-spacing: 10px; border: 0px; text-align: left; margin-left: auto; margin-right: auto;vertical-align:top;"<br />
|+ <br />
| <b>Language packs:</b><br />
|- style="vertical-align:top;"<br />
|[[File:fr_flag.png]] [http://moi3d.com/4.0/docs/moi_help_French.zip French v4 update]<br />
<br />
[[File:es_flag.png]] [http://moi3d.com/2.0/docs/v2_Spanish_update.zip Spanish v2 update]&nbsp;&nbsp;<br />
<br />
[[File:it_flag.png]] [http://moi3d.com/1.0/docs/Italian_language_pack.zip Italian UI and help file]&nbsp;&nbsp;<br />
|<br />
[[File:fr_flag.png]] [http://moi3d.com/2.0/docs/french_command_reference_update.zip French v2 update]&nbsp;&nbsp;<br />
<br />
[[File:de_flag.png]] [http://moi3d.com/2.0/docs/v2_German_update.zip German v2 update]&nbsp;&nbsp;<br />
|}<br />
<br />
== Tutorials ==<br />
{| style=" width: 80%; border-spacing: 10px; border: 0px; text-align: left; margin-left: auto; margin-right: auto;vertical-align:top;"<br />
|+ <br />
| <br />
|- style="vertical-align:top;"<br />
|<br />
[[File:Img_wiki_homepage.png|25px]] [http://moi3d.com/3.0/docs/tutorials.htm MoI documentation video tutorials]<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [https://gumroad.com/l/vavRq MoI Basics video tutorial ]by Bojan Koturanović - 7 hours $25 on Gumroad<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [https://www.youtube.com/playlist?list=PLu-75I3Zd8NS0AH3O75nOuerVz9O1rTUI Tutorials on YouTube ]by Liminal4D<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://moi3d.com/forum/index.php?webtag=MOI&msg=9816.1 48 German language video tutorials ] [[File:de_flag.png]] by Stefan Schneller on jewelry design<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://moi3d.com/download/Moi3d-Overview.pdf Introduction and overview PDF ]by Fabien Franzen<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://moi3d.com/forum/index.php?webtag=MOI&msg=7389.1 Sub-d car modeling in MoI ]by Ed Ferguson<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://moi3d.com/forum/index.php?webtag=MOI&msg=9899.1 Custom truck tutorial ]by Ed Ferguson<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://www.k4icy.com/tutorials.html Tutorials] by Mike Maynard, ( [[File:fr_flag.png]] [http://moiscript.weebly.com/ 18 of them in French ] by Pilou)<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://moi3d.com/forum/index.php?webtag=MOI&msg=284.1 Ring tutorial] by Jesse Kaufman, and [http://moi3d.com/forum/index.php?webtag=MOI&msg=510.5 #2], [http://moi3d.com/forum/index.php?webtag=MOI&msg=623.1 #3], <br />
[http://moi3d.com/forum/index.php?webtag=MOI&msg=556.1 #4],<br />
[http://moi3d.com/forum/index.php?webtag=MOI&msg=538.6 #5],<br />
[http://moi3d.com/forum/index.php?webtag=MOI&msg=536.1 #6]<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://moi3d.com/forum/index.php?webtag=MOI&msg=1175.3 Simple ring using rail revolve], <br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://moi3d.com/forum/index.php?webtag=MOI&msg=1175.5 Simple ring using sweep + scaling rail for more control]<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://moi3d.com/forum/index.php?webtag=MOI&msg=1057.1 Product design forums modeling challenges] <br />
<small>(not specific to MoI but useful for general CAD modeling strategy).</small><br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://moi3d.com/forum/index.php?webtag=MOI&msg=606.4 Simple Intarsia type design]<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://moi3d.com/forum/index.php?webtag=MOI&msg=1171.2 Creating a 3-toed base foot]<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://vimeo.com/30168354 Flow workflow video ]from danperk<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://3dcncguitars.com/ Tutorials for guitar modeling in MoI and Rhino and CNC production]<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://moi3d.com/forum/index.php?webtag=MOI&msg=8845.16 Car modeling techniques] by Zarkow, and [http://moi3d.com/forum/index.php?webtag=MOI&msg=8845.5 #2] and [http://moi3d.com/forum/index.php?webtag=MOI&msg=9956.1 video tutorials]<br />
<br />
<br />
<br />
|<br />
[[File:Img_wiki_homepage.png|25px]] [https://gumroad.com/l/fGqqS MoI for Game Assets video tutorial] by Arrimus 3D - 5 hours $9.99 on Gumroad<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://moiusers.blogspot.com/ Introductory videos ]by Tom Meeks - videos with narration covering a lot of basics.<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://moi3d.com/forum/index.php?webtag=MOI&msg=6058.1 Videos from Andrei Samardac]<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://moi3d.com/forum/index.php?webtag=MOI&msg=3842.1 Video on modeling a SpacePilot controller] from lyes <br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://vimeo.com/channels/moi3d Vimeo channel with tutorials] from lyes<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://bitreality.blogspot.com/ Joe's classical column video tutorials]<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://moi3d.com/forum/index.php?webtag=MOI&msg=402.9 Japanese bathtub tutorial]<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://moi3d.com/forum/index.php?webtag=MOI&msg=446.17 Object repair tutorial]<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://moi3d.com/forum/index.php?webtag=MOI&msg=2546.1 Ferrari 599 GTB tutorial videos ]by lyes<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://moi3d.com/forum/index.php?webtag=MOI&msg=2429.1 Snowman figure ]by PaQ<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://cid-30cffdfa97399495.skydrive.live.com/self.aspx/.Public/Accurate|_Tapers|_MoI|_V2.zip Accurate tapers using Expressions] by Danny <br />
<small>(Not really needed since Extrude now has a taper function good if you want to learn basic trig) D.T.</small><br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://moi3d.com/forum/index.php?webtag=MOI&msg=3814.1 Discussions on ship hull techniques]<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://moiscript.weebly.com/ Videos: Functions of the Manual] by Pilou ( [[File:fr_flag.png]] in French)<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://vimeo.com/30765016 Making accurate screw threads video] from OSTexo<br />
<br />
[[File:Img_wiki_homepage.png|25px]] Scooter tutorial from Mauro:&nbsp;&nbsp;&nbsp;&nbsp;[https://www.youtube.com/channel/UCq79CeWFi9yOjkXxYjF7n4A YouTube channel]&nbsp;&nbsp;&nbsp;&nbsp;[http://moi3d.com/forum/index.php?webtag=MOI&msg=9790.1 Forum post]<br />
<br />
|}<br />
<br />
== Helper programs ==<br />
Some standalone small programs to help accomplish specific tasks.<br />
<br />
=== Rhino6/7 3DM file format to Rhino5 3DM file format (MOI3D compatible) converter ===<br />
[https://moi3d.com/download/Convert3DMToRhinoV5_win.zip Download Convert3DMToRhinoV5 converter for Windows]<br />
<br />
[https://moi3d.com/download/Convert3DMToRhinoV5_mac.zip Download Convert3DMToRhinoV5 converter for Mac]<br />
<br />
<br />
=== Obj23dmWireframe converter ===<br />
[https://moi3d.com/download/Obj23dmWireframe.zip Download Obj23dmWireframe converter for Windows]<br><br />
[https://moi3d.com/download/Obj23dmWireframe.app.zip Download Obj23dmWireframe converter for Mac]<br />
<br />
This enables bringing polygon data in an .obj file into MoI to use as a construction guide.<br />
Unzip it to some folder, and then you can run the Obj23dmWireframe.exe program. It will prompt you for the name of an .obj file to read, and after that the name of a .3dm file to create. It will read all the polygon data from the obj file and convert the edges of polygons into line segments, and then write those line segments to the 3dm file. You can then load that 3dm file into MoI and use those line segments to snap on to. Originally posted on the forum [http://moi3d.com/forum/index.php?webtag=MOI&msg=1099.1 here].<br />
<br />
=== MergeOBJ utility ===<br />
[http://moi3d.com/download/MergeOBJ.exe Download MergeOBJ utility]<br />
<br />
This utility program can combine several input OBJ files into one single OBJ file. This may be useful if you want to build up a set of different OBJ files possibly by exporting pieces with different mesh settings, and then combine them into one OBJ file if your target program wants to work with only a single file. This was created because the freely available mesh editing tools have a tendency to remove vertex normals when combining files together, this utility will preserve vertex normals. Announced on the forum [http://moi3d.com/forum/index.php?webtag=MOI&msg=3570.12 here].<br />
<br />
=== Old utilities ===<br />
[http://moi3d.com/download/3dmCurves2DXF.zip 3dmCurves2DXF converter] - This could convert curves in a 3DM file to a DXF file to be used for CAM programs. It's not needed anymore since MoI v3 now directly supports DXF file export.<br><br><br />
These utilities were to help with MoI v1 which did not export material assignments to OBJ files. Since MoI v2 can control material assignments by assigning Styles, these are no longer necessary but are still included here for v1 users.<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;[http://moi3d.com/download/SeparateOBJ.zip SeparateOBJ editor] - Breaks an OBJ file exported from MoI v1 into smaller pieces and puts separate material assignments on each piece for import into programs that require that.<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;[http://moi3d.com/download/MergeOBJ_old.zip MergeOBJ editor (old version)] - Edits an OBJ file to combine all the different objects in it into one single object so there will be just one material for the whole thing.</div>Michael Gibsonhttp://moi3d.com/wiki/index.php?title=Resources&diff=1013Resources2021-11-08T05:55:23Z<p>Michael Gibson: /* Obj23dmWireframe converter */</p>
<hr />
<div>__NOTOC__<br />
===Links to useful MoI information on the web &nbsp;&nbsp;&nbsp;([[File:fr_flag.png]] [[Resources_%28french%29|French]])===<br />
<br />
<br />
{| style=" width: 80%; border-spacing: 10px; border: 0px; text-align: left; margin-left: auto; margin-right: auto;vertical-align:top;"<br />
|+ <br />
| <b>MOI's site links</b> || <b>External links</b><br />
|- style="vertical-align:top;"<br />
| <br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://moi3d.com MoI home page]<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://moi3d.com/forum MoI discussion forum] <br />
<br />
[[File:Img_wiki_homepage.png|25px]] [[FAQ|Frequently Asked Questions]] <br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://moi3d.com/4.0/docs/moi_help.htm MoI help file online] <br />
([[File:fr_flag.png]][http://moi3d.com/4.0/docs/moi_help_French.htm French]) ([[File:de_flag.png]] [http://moi3d.com/2.0/docs/moi_help_German.htm German]) ([[File:es_flag.png]] [http://moi3d.com/2.0/docs/moi_help_Spanish.htm Spanish]) ([[File:it_flag.png]] [http://moi3d.com/1.0/docs/moi_help_Italian.htm Italian])<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [[Shortcut Keys]]<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [[Hidden Secrets]]<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [[Scripting]] <br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://moi3d.com/forum/index.php?webtag=MOI&msg=7841.6 Burr's script archive - collection of scripts posted on the forum]<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [[V4Beta|V4 Beta release notes]]<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [[Nodeeditor|Node editor plugin]]<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://moi3d.com/4.0/EULA_retail.rtf MoI End User License Agreement]<br />
<br />
| <br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://kyticka.webzdarma.cz/3d/moi/ Petr's MoI page], a variety of informations including scripts and custom commands. ([[File:fr_flag.png]][http://moiscript.weebly.com/ French version])<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://moi.maxsm.net/ Max Smirnov's MoI scripts], numerous advanced scripts from Max.<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://moi.maxsm.net/media/files/ Max's file archive ]([[File:fr_flag.png]][http://moiscript.weebly.com/ French version])<br />
<br />
|}<br />
<br />
{| style=" width: 80%; border-spacing: 10px; border: 0px; text-align: left; margin-left: auto; margin-right: auto;vertical-align:top;"<br />
|+ <br />
| <b>Language packs:</b><br />
|- style="vertical-align:top;"<br />
|[[File:fr_flag.png]] [http://moi3d.com/4.0/docs/moi_help_French.zip French v4 update]<br />
<br />
[[File:es_flag.png]] [http://moi3d.com/2.0/docs/v2_Spanish_update.zip Spanish v2 update]&nbsp;&nbsp;<br />
<br />
[[File:it_flag.png]] [http://moi3d.com/1.0/docs/Italian_language_pack.zip Italian UI and help file]&nbsp;&nbsp;<br />
|<br />
[[File:fr_flag.png]] [http://moi3d.com/2.0/docs/french_command_reference_update.zip French v2 update]&nbsp;&nbsp;<br />
<br />
[[File:de_flag.png]] [http://moi3d.com/2.0/docs/v2_German_update.zip German v2 update]&nbsp;&nbsp;<br />
|}<br />
<br />
== Tutorials ==<br />
{| style=" width: 80%; border-spacing: 10px; border: 0px; text-align: left; margin-left: auto; margin-right: auto;vertical-align:top;"<br />
|+ <br />
| <br />
|- style="vertical-align:top;"<br />
|<br />
[[File:Img_wiki_homepage.png|25px]] [http://moi3d.com/3.0/docs/tutorials.htm MoI documentation video tutorials]<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [https://gumroad.com/l/vavRq MoI Basics video tutorial ]by Bojan Koturanović - 7 hours $25 on Gumroad<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [https://www.youtube.com/playlist?list=PLu-75I3Zd8NS0AH3O75nOuerVz9O1rTUI Tutorials on YouTube ]by Liminal4D<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://moi3d.com/forum/index.php?webtag=MOI&msg=9816.1 48 German language video tutorials ] [[File:de_flag.png]] by Stefan Schneller on jewelry design<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://moi3d.com/download/Moi3d-Overview.pdf Introduction and overview PDF ]by Fabien Franzen<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://moi3d.com/forum/index.php?webtag=MOI&msg=7389.1 Sub-d car modeling in MoI ]by Ed Ferguson<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://moi3d.com/forum/index.php?webtag=MOI&msg=9899.1 Custom truck tutorial ]by Ed Ferguson<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://www.k4icy.com/tutorials.html Tutorials] by Mike Maynard, ( [[File:fr_flag.png]] [http://moiscript.weebly.com/ 18 of them in French ] by Pilou)<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://moi3d.com/forum/index.php?webtag=MOI&msg=284.1 Ring tutorial] by Jesse Kaufman, and [http://moi3d.com/forum/index.php?webtag=MOI&msg=510.5 #2], [http://moi3d.com/forum/index.php?webtag=MOI&msg=623.1 #3], <br />
[http://moi3d.com/forum/index.php?webtag=MOI&msg=556.1 #4],<br />
[http://moi3d.com/forum/index.php?webtag=MOI&msg=538.6 #5],<br />
[http://moi3d.com/forum/index.php?webtag=MOI&msg=536.1 #6]<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://moi3d.com/forum/index.php?webtag=MOI&msg=1175.3 Simple ring using rail revolve], <br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://moi3d.com/forum/index.php?webtag=MOI&msg=1175.5 Simple ring using sweep + scaling rail for more control]<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://moi3d.com/forum/index.php?webtag=MOI&msg=1057.1 Product design forums modeling challenges] <br />
<small>(not specific to MoI but useful for general CAD modeling strategy).</small><br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://moi3d.com/forum/index.php?webtag=MOI&msg=606.4 Simple Intarsia type design]<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://moi3d.com/forum/index.php?webtag=MOI&msg=1171.2 Creating a 3-toed base foot]<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://vimeo.com/30168354 Flow workflow video ]from danperk<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://3dcncguitars.com/ Tutorials for guitar modeling in MoI and Rhino and CNC production]<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://moi3d.com/forum/index.php?webtag=MOI&msg=8845.16 Car modeling techniques] by Zarkow, and [http://moi3d.com/forum/index.php?webtag=MOI&msg=8845.5 #2] and [http://moi3d.com/forum/index.php?webtag=MOI&msg=9956.1 video tutorials]<br />
<br />
<br />
<br />
|<br />
[[File:Img_wiki_homepage.png|25px]] [https://gumroad.com/l/fGqqS MoI for Game Assets video tutorial] by Arrimus 3D - 5 hours $9.99 on Gumroad<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://moiusers.blogspot.com/ Introductory videos ]by Tom Meeks - videos with narration covering a lot of basics.<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://moi3d.com/forum/index.php?webtag=MOI&msg=6058.1 Videos from Andrei Samardac]<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://moi3d.com/forum/index.php?webtag=MOI&msg=3842.1 Video on modeling a SpacePilot controller] from lyes <br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://vimeo.com/channels/moi3d Vimeo channel with tutorials] from lyes<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://bitreality.blogspot.com/ Joe's classical column video tutorials]<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://moi3d.com/forum/index.php?webtag=MOI&msg=402.9 Japanese bathtub tutorial]<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://moi3d.com/forum/index.php?webtag=MOI&msg=446.17 Object repair tutorial]<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://moi3d.com/forum/index.php?webtag=MOI&msg=2546.1 Ferrari 599 GTB tutorial videos ]by lyes<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://moi3d.com/forum/index.php?webtag=MOI&msg=2429.1 Snowman figure ]by PaQ<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://cid-30cffdfa97399495.skydrive.live.com/self.aspx/.Public/Accurate|_Tapers|_MoI|_V2.zip Accurate tapers using Expressions] by Danny <br />
<small>(Not really needed since Extrude now has a taper function good if you want to learn basic trig) D.T.</small><br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://moi3d.com/forum/index.php?webtag=MOI&msg=3814.1 Discussions on ship hull techniques]<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://moiscript.weebly.com/ Videos: Functions of the Manual] by Pilou ( [[File:fr_flag.png]] in French)<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://vimeo.com/30765016 Making accurate screw threads video] from OSTexo<br />
<br />
[[File:Img_wiki_homepage.png|25px]] Scooter tutorial from Mauro:&nbsp;&nbsp;&nbsp;&nbsp;[https://www.youtube.com/channel/UCq79CeWFi9yOjkXxYjF7n4A YouTube channel]&nbsp;&nbsp;&nbsp;&nbsp;[http://moi3d.com/forum/index.php?webtag=MOI&msg=9790.1 Forum post]<br />
<br />
|}<br />
<br />
== Helper programs ==<br />
Some standalone small programs to help accomplish specific tasks.<br />
<br />
=== Rhino6/7 3DM file format to Rhino5 3DM file format (MOI3D compatible) converter ===<br />
[https://moi3d.com/download/Convert3DMToRhinoV5_win.zip Download Convert3DMToRhinoV5 converter for Windows]<br />
<br />
[https://moi3d.com/download/Convert3DMToRhinoV5_mac.zip Download Convert3DMToRhinoV5 converter for Mac]<br />
<br />
<br />
=== Obj23dmWireframe converter ===<br />
[https://moi3d.com/download/Obj23dmWireframe.zip Download Obj23dmWireframe converter for Windows]<br />
[https://moi3d.com/download/Obj23dmWireframe.app.zip Download Obj23dmWireframe converter for Windows]<br />
<br />
This enables bringing polygon data in an .obj file into MoI to use as a construction guide.<br />
Unzip it to some folder, and then you can run the Obj23dmWireframe.exe program. It will prompt you for the name of an .obj file to read, and after that the name of a .3dm file to create. It will read all the polygon data from the obj file and convert the edges of polygons into line segments, and then write those line segments to the 3dm file. You can then load that 3dm file into MoI and use those line segments to snap on to. Originally posted on the forum [http://moi3d.com/forum/index.php?webtag=MOI&msg=1099.1 here].<br />
<br />
=== MergeOBJ utility ===<br />
[http://moi3d.com/download/MergeOBJ.exe Download MergeOBJ utility]<br />
<br />
This utility program can combine several input OBJ files into one single OBJ file. This may be useful if you want to build up a set of different OBJ files possibly by exporting pieces with different mesh settings, and then combine them into one OBJ file if your target program wants to work with only a single file. This was created because the freely available mesh editing tools have a tendency to remove vertex normals when combining files together, this utility will preserve vertex normals. Announced on the forum [http://moi3d.com/forum/index.php?webtag=MOI&msg=3570.12 here].<br />
<br />
=== Old utilities ===<br />
[http://moi3d.com/download/3dmCurves2DXF.zip 3dmCurves2DXF converter] - This could convert curves in a 3DM file to a DXF file to be used for CAM programs. It's not needed anymore since MoI v3 now directly supports DXF file export.<br><br><br />
These utilities were to help with MoI v1 which did not export material assignments to OBJ files. Since MoI v2 can control material assignments by assigning Styles, these are no longer necessary but are still included here for v1 users.<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;[http://moi3d.com/download/SeparateOBJ.zip SeparateOBJ editor] - Breaks an OBJ file exported from MoI v1 into smaller pieces and puts separate material assignments on each piece for import into programs that require that.<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;[http://moi3d.com/download/MergeOBJ_old.zip MergeOBJ editor (old version)] - Edits an OBJ file to combine all the different objects in it into one single object so there will be just one material for the whole thing.</div>Michael Gibsonhttp://moi3d.com/wiki/index.php?title=Resources&diff=1012Resources2021-08-05T23:04:31Z<p>Michael Gibson: /* Tutorials */</p>
<hr />
<div>__NOTOC__<br />
===Links to useful MoI information on the web &nbsp;&nbsp;&nbsp;([[File:fr_flag.png]] [[Resources_%28french%29|French]])===<br />
<br />
<br />
{| style=" width: 80%; border-spacing: 10px; border: 0px; text-align: left; margin-left: auto; margin-right: auto;vertical-align:top;"<br />
|+ <br />
| <b>MOI's site links</b> || <b>External links</b><br />
|- style="vertical-align:top;"<br />
| <br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://moi3d.com MoI home page]<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://moi3d.com/forum MoI discussion forum] <br />
<br />
[[File:Img_wiki_homepage.png|25px]] [[FAQ|Frequently Asked Questions]] <br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://moi3d.com/4.0/docs/moi_help.htm MoI help file online] <br />
([[File:fr_flag.png]][http://moi3d.com/4.0/docs/moi_help_French.htm French]) ([[File:de_flag.png]] [http://moi3d.com/2.0/docs/moi_help_German.htm German]) ([[File:es_flag.png]] [http://moi3d.com/2.0/docs/moi_help_Spanish.htm Spanish]) ([[File:it_flag.png]] [http://moi3d.com/1.0/docs/moi_help_Italian.htm Italian])<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [[Shortcut Keys]]<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [[Hidden Secrets]]<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [[Scripting]] <br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://moi3d.com/forum/index.php?webtag=MOI&msg=7841.6 Burr's script archive - collection of scripts posted on the forum]<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [[V4Beta|V4 Beta release notes]]<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [[Nodeeditor|Node editor plugin]]<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://moi3d.com/4.0/EULA_retail.rtf MoI End User License Agreement]<br />
<br />
| <br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://kyticka.webzdarma.cz/3d/moi/ Petr's MoI page], a variety of informations including scripts and custom commands. ([[File:fr_flag.png]][http://moiscript.weebly.com/ French version])<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://moi.maxsm.net/ Max Smirnov's MoI scripts], numerous advanced scripts from Max.<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://moi.maxsm.net/media/files/ Max's file archive ]([[File:fr_flag.png]][http://moiscript.weebly.com/ French version])<br />
<br />
|}<br />
<br />
{| style=" width: 80%; border-spacing: 10px; border: 0px; text-align: left; margin-left: auto; margin-right: auto;vertical-align:top;"<br />
|+ <br />
| <b>Language packs:</b><br />
|- style="vertical-align:top;"<br />
|[[File:fr_flag.png]] [http://moi3d.com/4.0/docs/moi_help_French.zip French v4 update]<br />
<br />
[[File:es_flag.png]] [http://moi3d.com/2.0/docs/v2_Spanish_update.zip Spanish v2 update]&nbsp;&nbsp;<br />
<br />
[[File:it_flag.png]] [http://moi3d.com/1.0/docs/Italian_language_pack.zip Italian UI and help file]&nbsp;&nbsp;<br />
|<br />
[[File:fr_flag.png]] [http://moi3d.com/2.0/docs/french_command_reference_update.zip French v2 update]&nbsp;&nbsp;<br />
<br />
[[File:de_flag.png]] [http://moi3d.com/2.0/docs/v2_German_update.zip German v2 update]&nbsp;&nbsp;<br />
|}<br />
<br />
== Tutorials ==<br />
{| style=" width: 80%; border-spacing: 10px; border: 0px; text-align: left; margin-left: auto; margin-right: auto;vertical-align:top;"<br />
|+ <br />
| <br />
|- style="vertical-align:top;"<br />
|<br />
[[File:Img_wiki_homepage.png|25px]] [http://moi3d.com/3.0/docs/tutorials.htm MoI documentation video tutorials]<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [https://gumroad.com/l/vavRq MoI Basics video tutorial ]by Bojan Koturanović - 7 hours $25 on Gumroad<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [https://www.youtube.com/playlist?list=PLu-75I3Zd8NS0AH3O75nOuerVz9O1rTUI Tutorials on YouTube ]by Liminal4D<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://moi3d.com/forum/index.php?webtag=MOI&msg=9816.1 48 German language video tutorials ] [[File:de_flag.png]] by Stefan Schneller on jewelry design<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://moi3d.com/download/Moi3d-Overview.pdf Introduction and overview PDF ]by Fabien Franzen<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://moi3d.com/forum/index.php?webtag=MOI&msg=7389.1 Sub-d car modeling in MoI ]by Ed Ferguson<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://moi3d.com/forum/index.php?webtag=MOI&msg=9899.1 Custom truck tutorial ]by Ed Ferguson<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://www.k4icy.com/tutorials.html Tutorials] by Mike Maynard, ( [[File:fr_flag.png]] [http://moiscript.weebly.com/ 18 of them in French ] by Pilou)<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://moi3d.com/forum/index.php?webtag=MOI&msg=284.1 Ring tutorial] by Jesse Kaufman, and [http://moi3d.com/forum/index.php?webtag=MOI&msg=510.5 #2], [http://moi3d.com/forum/index.php?webtag=MOI&msg=623.1 #3], <br />
[http://moi3d.com/forum/index.php?webtag=MOI&msg=556.1 #4],<br />
[http://moi3d.com/forum/index.php?webtag=MOI&msg=538.6 #5],<br />
[http://moi3d.com/forum/index.php?webtag=MOI&msg=536.1 #6]<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://moi3d.com/forum/index.php?webtag=MOI&msg=1175.3 Simple ring using rail revolve], <br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://moi3d.com/forum/index.php?webtag=MOI&msg=1175.5 Simple ring using sweep + scaling rail for more control]<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://moi3d.com/forum/index.php?webtag=MOI&msg=1057.1 Product design forums modeling challenges] <br />
<small>(not specific to MoI but useful for general CAD modeling strategy).</small><br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://moi3d.com/forum/index.php?webtag=MOI&msg=606.4 Simple Intarsia type design]<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://moi3d.com/forum/index.php?webtag=MOI&msg=1171.2 Creating a 3-toed base foot]<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://vimeo.com/30168354 Flow workflow video ]from danperk<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://3dcncguitars.com/ Tutorials for guitar modeling in MoI and Rhino and CNC production]<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://moi3d.com/forum/index.php?webtag=MOI&msg=8845.16 Car modeling techniques] by Zarkow, and [http://moi3d.com/forum/index.php?webtag=MOI&msg=8845.5 #2] and [http://moi3d.com/forum/index.php?webtag=MOI&msg=9956.1 video tutorials]<br />
<br />
<br />
<br />
|<br />
[[File:Img_wiki_homepage.png|25px]] [https://gumroad.com/l/fGqqS MoI for Game Assets video tutorial] by Arrimus 3D - 5 hours $9.99 on Gumroad<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://moiusers.blogspot.com/ Introductory videos ]by Tom Meeks - videos with narration covering a lot of basics.<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://moi3d.com/forum/index.php?webtag=MOI&msg=6058.1 Videos from Andrei Samardac]<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://moi3d.com/forum/index.php?webtag=MOI&msg=3842.1 Video on modeling a SpacePilot controller] from lyes <br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://vimeo.com/channels/moi3d Vimeo channel with tutorials] from lyes<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://bitreality.blogspot.com/ Joe's classical column video tutorials]<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://moi3d.com/forum/index.php?webtag=MOI&msg=402.9 Japanese bathtub tutorial]<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://moi3d.com/forum/index.php?webtag=MOI&msg=446.17 Object repair tutorial]<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://moi3d.com/forum/index.php?webtag=MOI&msg=2546.1 Ferrari 599 GTB tutorial videos ]by lyes<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://moi3d.com/forum/index.php?webtag=MOI&msg=2429.1 Snowman figure ]by PaQ<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://cid-30cffdfa97399495.skydrive.live.com/self.aspx/.Public/Accurate|_Tapers|_MoI|_V2.zip Accurate tapers using Expressions] by Danny <br />
<small>(Not really needed since Extrude now has a taper function good if you want to learn basic trig) D.T.</small><br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://moi3d.com/forum/index.php?webtag=MOI&msg=3814.1 Discussions on ship hull techniques]<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://moiscript.weebly.com/ Videos: Functions of the Manual] by Pilou ( [[File:fr_flag.png]] in French)<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://vimeo.com/30765016 Making accurate screw threads video] from OSTexo<br />
<br />
[[File:Img_wiki_homepage.png|25px]] Scooter tutorial from Mauro:&nbsp;&nbsp;&nbsp;&nbsp;[https://www.youtube.com/channel/UCq79CeWFi9yOjkXxYjF7n4A YouTube channel]&nbsp;&nbsp;&nbsp;&nbsp;[http://moi3d.com/forum/index.php?webtag=MOI&msg=9790.1 Forum post]<br />
<br />
|}<br />
<br />
== Helper programs ==<br />
Some standalone small programs to help accomplish specific tasks.<br />
<br />
=== Rhino6/7 3DM file format to Rhino5 3DM file format (MOI3D compatible) converter ===<br />
[https://moi3d.com/download/Convert3DMToRhinoV5_win.zip Download Convert3DMToRhinoV5 converter for Windows]<br />
<br />
[https://moi3d.com/download/Convert3DMToRhinoV5_mac.zip Download Convert3DMToRhinoV5 converter for Mac]<br />
<br />
<br />
=== Obj23dmWireframe converter ===<br />
[http://moi3d.com/download/Obj23dmWireframe.zip Download Obj23dmWireframe converter]<br />
<br />
This enables bringing polygon data in an .obj file into MoI to use as a construction guide.<br />
Unzip it to some folder, and then you can run the Obj23dmWireframe.exe program. It will prompt you for the name of an .obj file to read, and after that the name of a .3dm file to create. It will read all the polygon data from the obj file and convert the edges of polygons into line segments, and then write those line segments to the 3dm file. You can then load that 3dm file into MoI and use those line segments to snap on to. Originally posted on the forum [http://moi3d.com/forum/index.php?webtag=MOI&msg=1099.1 here].<br />
<br />
=== MergeOBJ utility ===<br />
[http://moi3d.com/download/MergeOBJ.exe Download MergeOBJ utility]<br />
<br />
This utility program can combine several input OBJ files into one single OBJ file. This may be useful if you want to build up a set of different OBJ files possibly by exporting pieces with different mesh settings, and then combine them into one OBJ file if your target program wants to work with only a single file. This was created because the freely available mesh editing tools have a tendency to remove vertex normals when combining files together, this utility will preserve vertex normals. Announced on the forum [http://moi3d.com/forum/index.php?webtag=MOI&msg=3570.12 here].<br />
<br />
=== Old utilities ===<br />
[http://moi3d.com/download/3dmCurves2DXF.zip 3dmCurves2DXF converter] - This could convert curves in a 3DM file to a DXF file to be used for CAM programs. It's not needed anymore since MoI v3 now directly supports DXF file export.<br><br><br />
These utilities were to help with MoI v1 which did not export material assignments to OBJ files. Since MoI v2 can control material assignments by assigning Styles, these are no longer necessary but are still included here for v1 users.<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;[http://moi3d.com/download/SeparateOBJ.zip SeparateOBJ editor] - Breaks an OBJ file exported from MoI v1 into smaller pieces and puts separate material assignments on each piece for import into programs that require that.<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;[http://moi3d.com/download/MergeOBJ_old.zip MergeOBJ editor (old version)] - Edits an OBJ file to combine all the different objects in it into one single object so there will be just one material for the whole thing.</div>Michael Gibsonhttp://moi3d.com/wiki/index.php?title=FAQ&diff=1011FAQ2021-08-05T22:58:45Z<p>Michael Gibson: /* Q: How do I install a plug-in script? */</p>
<hr />
<div><big>Frequently Asked Questions</big>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;[[File:fr_flag.png]] [[QUESTIONS_FREQUENTES|(French version here)]]<br />
<br />
== Q: How do I install a plug-in script? ==<br />
<br />
MoI plug-in scripts usually come as a .zip file, where the .zip file contains 2 files, an .htm file and a .js file. To install the plug-in you need to unzip it and then copy those 2 files into MoI's commands folder.<br />
<br />
Starting with MoI v4, MoI will now look for commands in 2 places, the commands folder inside the MoI application and also in the appdata Moi commands folder. It is recommended to copy plugins to the appdata folder so that new versions of MoI that you install will find them without needing any additional copying.<br />
<br />
On Windows you can find the Moi appdata folder by typing Win+R to bring up the Windows "Run" dialog and then type in:<br><br />
%AppData%\Moi\commands<br />
<br />
On Mac from a Finder window, go to the menu and pick Go > "Go to folder" and type in:<br><br />
~/Library/Application Support/Moi/commands<br />
<br />
Once the files are copied into the commands folder that will make a new command available to MoI. To trigger the new command set up a shortcut key and put in the new command name in the "command" part of the shortcut key.<br />
<br />
The command name is the base name of the files that you copied, so if a plug-in has files name <b>ExamplePlugin</b>.htm and <b>ExamplePlugin</b>.js, when you copy those into the commands folder it will make a command named <b>ExamplePlugin</b> available, so when you set up the shortcut key put in: <b>ExamplePlugin</b> as the command name.<br />
<br />
Note that the .htm and .js files should be directly contained inside MoI's commands folder and not nested down in any sub-folder beneath commands. Also for the command to run your shortcut key should contain just the plain command name as described above, no file extension and no script: prefix at the front.<br />
<br />
== Q: What about a Mac or Linux version? ==<br />
<br />
A Mac version has just been released, [http://moi3d.com/forum/index.php?webtag=MOI&msg=5191.1 announcement here].<br />
<br />
Right now a Linux specific version is not planned, but the current v3 Windows version beta will run under Linux using [http://www.winehq.org/ Wine] as long as you have good enough video drivers. Getting quality 3D accelerated video drivers seems to be a significant issue on Linux currently though.<br />
<br />
== Q: Why can I export to .obj format, but cannot read .obj format into MoI? ==<br />
<br />
MoI is focused on modeling using [http://en.wikipedia.org/wiki/NURBS NURBS] objects, which are made up of smooth curves and surface patches. It's a significantly different way of structuring an object than a [http://en.wikipedia.org/wiki/Polygon_mesh polygon mesh] method, which is the kind of data that is contained in .obj, .3ds, .stl and .lwo files.<br />
<br />
When you export from MoI to one of these polygon mesh formats, MoI will dice up its smooth surfaces into smaller polygon facets to create a polygon mesh. But it is not easy to go the reverse direction and take diced up polygons and create larger smooth surfaces back from them. It's kind of like how you can take a bunch of apples and smash them into applesauce, but it is hard to start with applesauce and go back to apples.<br />
<br />
If you want to use a polygon mesh object as a kind of reference object to snap on to while drawing something new in MoI, check out this tool: [[Resources#Obj23dmWireframe_converter|Obj23dmWireframe converter]] which will allow you to convert all the edges of a polygon mesh .obj file into a line segments in a .3dm file which can then be loaded into MoI. That enables you to basically use the wireframe of the mesh in MoI as a guide.<br />
<br />
<br />
<span id="showpts"></span><br />
== Q: Why does show points work for some objects but not others? ==<br />
MoI won't let you turn on points if you have an object made up of joined surfaces, where the surfaces do not have aligned control points along their common edges. This can happen easily when surfaces are intersected such as in the Boolean commands.<br />
<br />
The points are not shown in that situation because it would be too easy to drag the points and cause a gap to open up along what should be a shared sealed edge.<br />
<br />
You can get the points to turn on by using Edit/Separate to break your joined object into individual separate surfaces. You can always show points for an individual surface because it does not have this "pull apart shared edge" issue, since it doesn't have edges shared with other surfaces anymore.<br />
<br />
Here are some pictures to explain it further.<br />
<br />
Here is a plane and a cylinder that I have intersected and trimmed with one another:<br><br />
[[Image:ShowPointsFAQ1.jpg]]<br />
<br />
<br />
Here are the control points for the cylinder surface:<br><br />
[[Image:ShowPointsFAQ2.jpg]]<br />
<br />
<br />
Note how there are no control points along the intersection edge with the plane - that edge is what is called a "trim curve", it is a curve that has been calculated that exists on the surface, but it is not directly connected to the control point structure of the surface. So you can't modify the surface by pulling on the trim curve itself, the trim curve has its own control points that are separate from the surface's control points.<br />
<br />
Here are the points for the plane, just 4 points at the corners:<br><br />
[[Image:ShowPointsFAQ3.jpg]]<br />
<br />
<br />
So you can see here that the 4 points for the plane do not match up in any way to the control points for the cylinder. here is what happens now if I grab one of the points of the plane and drag it, it opens up a gap:<br><br />
[[Image:ShowPointsFAQ4.jpg]]<br />
<br />
<br />
This is kind of a fundamental thing for how NURBS modeling works, it has to do with the creation of those "trim curves" that live on a surface but are separate from the surface's control points.<br />
<br />
After you have surfaces connected to each other by trim curves like these, you can't easily make modifications by moving surface control points around and still have the connections between the trim curves stay intact.<br />
<br />
So the whole trim curve system does not really lend itself to point squishing - however it is also the key thing that makes Boolean operations work really well with NURBS models, since as you do multiple Boolean operations the surfaces themselves don't change, just new trim curves are calculated. With a polygon type modeler, each boolean operation actually dices the polygon surfaces themselves up into a whole lot of small pieces. But since polygon modelers do not have trim curves, they stay a lot more squishable by point manipulation.<br />
<br />
<br />
== Q: Why do I get small shading errors when exporting to some rendering programs? ==<br />
That usually means that your rendering program is not reading in the smoothing information and is trying to calculate smooth shading by just averaging the normals between adjacent polygons. That kind of automatically calculated smoothing can easily lead to glitches especially in areas where there are polygons of different sizes next to one another.<br />
<br />
If you can instead get accurate shading normals into your program, it will avoid these kinds of glitches and help get super smooth looking renderings.<br />
<br />
To get accurate normals, first you need to use a file format that supports vertex normals. Usually .obj format is the best choice, except use .lwo for Modo and for Blender use .lwo along with [[Resources#Blender_importer|this Blender import script]]. Avoid using file formats that don't support normals such as .stl and .3ds.<br />
<br />
Sometimes when importing an .obj file into your application, there will be some checkbox options for "use normals", or "load vertex normals", etc... - make sure that is enabled.<br />
<br />
Also some programs cannot deal with welded meshes in the .obj file, so turning welding off can help in some cases. For example turning welding off makes normals come through ok to Electric Image. To turn welding off, during the mesh export click the little arrow in the lower-left corner of the "Meshing options" dialog box to expand it to detailed settings, and uncheck "Weld vertices along edges".</div>Michael Gibsonhttp://moi3d.com/wiki/index.php?title=Resources&diff=1009Resources2021-04-21T21:54:22Z<p>Michael Gibson: /* Tutorials */</p>
<hr />
<div>__NOTOC__<br />
===Links to useful MoI information on the web &nbsp;&nbsp;&nbsp;([[File:fr_flag.png]] [[Resources_%28french%29|French]])===<br />
<br />
<br />
{| style=" width: 80%; border-spacing: 10px; border: 0px; text-align: left; margin-left: auto; margin-right: auto;vertical-align:top;"<br />
|+ <br />
| <b>MOI's site links</b> || <b>External links</b><br />
|- style="vertical-align:top;"<br />
| <br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://moi3d.com MoI home page]<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://moi3d.com/forum MoI discussion forum] <br />
<br />
[[File:Img_wiki_homepage.png|25px]] [[FAQ|Frequently Asked Questions]] <br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://moi3d.com/4.0/docs/moi_help.htm MoI help file online] <br />
([[File:fr_flag.png]][http://moi3d.com/4.0/docs/moi_help_French.htm French]) ([[File:de_flag.png]] [http://moi3d.com/2.0/docs/moi_help_German.htm German]) ([[File:es_flag.png]] [http://moi3d.com/2.0/docs/moi_help_Spanish.htm Spanish]) ([[File:it_flag.png]] [http://moi3d.com/1.0/docs/moi_help_Italian.htm Italian])<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [[Shortcut Keys]]<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [[Hidden Secrets]]<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [[Scripting]] <br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://moi3d.com/forum/index.php?webtag=MOI&msg=7841.6 Burr's script archive - collection of scripts posted on the forum]<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [[V4Beta|V4 Beta release notes]]<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [[Nodeeditor|Node editor plugin]]<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://moi3d.com/4.0/EULA_retail.rtf MoI End User License Agreement]<br />
<br />
| <br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://kyticka.webzdarma.cz/3d/moi/ Petr's MoI page], a variety of informations including scripts and custom commands. ([[File:fr_flag.png]][http://moiscript.weebly.com/ French version])<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://moi.maxsm.net/ Max Smirnov's MoI scripts], numerous advanced scripts from Max.<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://moi.maxsm.net/media/files/ Max's file archive ]([[File:fr_flag.png]][http://moiscript.weebly.com/ French version])<br />
<br />
|}<br />
<br />
{| style=" width: 80%; border-spacing: 10px; border: 0px; text-align: left; margin-left: auto; margin-right: auto;vertical-align:top;"<br />
|+ <br />
| <b>Language packs:</b><br />
|- style="vertical-align:top;"<br />
|[[File:fr_flag.png]] [http://moi3d.com/4.0/docs/moi_help_French.zip French v4 update]<br />
<br />
[[File:es_flag.png]] [http://moi3d.com/2.0/docs/v2_Spanish_update.zip Spanish v2 update]&nbsp;&nbsp;<br />
<br />
[[File:it_flag.png]] [http://moi3d.com/1.0/docs/Italian_language_pack.zip Italian UI and help file]&nbsp;&nbsp;<br />
|<br />
[[File:fr_flag.png]] [http://moi3d.com/2.0/docs/french_command_reference_update.zip French v2 update]&nbsp;&nbsp;<br />
<br />
[[File:de_flag.png]] [http://moi3d.com/2.0/docs/v2_German_update.zip German v2 update]&nbsp;&nbsp;<br />
|}<br />
<br />
== Tutorials ==<br />
{| style=" width: 80%; border-spacing: 10px; border: 0px; text-align: left; margin-left: auto; margin-right: auto;vertical-align:top;"<br />
|+ <br />
| <br />
|- style="vertical-align:top;"<br />
|<br />
[[File:Img_wiki_homepage.png|25px]] [http://moi3d.com/3.0/docs/tutorials.htm MoI documentation video tutorials]<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [https://gumroad.com/l/vavRq MoI Basics video tutorial ]by Bojan Koturanović - 7 hours $25 on Gumroad<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [https://www.youtube.com/playlist?list=PLu-75I3Zd8NS0AH3O75nOuerVz9O1rTUI Tutorials on YouTube ]by Liminal4D<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://moi3d.com/forum/index.php?webtag=MOI&msg=9816.1 48 German language video tutorials ] [[File:de_flag.png]] by Stefan Schneller on jewelry design<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://moi3d.com/download/Moi3d-Overview.pdf Introduction and overview PDF ]by Fabien Franzen<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://moi3d.com/forum/index.php?webtag=MOI&msg=7389.1 Sub-d car modeling in MoI ]by Ed Ferguson<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://moi3d.com/forum/index.php?webtag=MOI&msg=9899.1 Custom truck tutorial ]by Ed Ferguson<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://www.k4icy.com/tutorials.html Tutorials] by Mike Maynard, ( [[File:fr_flag.png]] [http://moiscript.weebly.com/ 18 of them in French ] by Pilou)<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://moi3d.com/forum/index.php?webtag=MOI&msg=284.1 Ring tutorial] by Jesse Kaufman, and [http://moi3d.com/forum/index.php?webtag=MOI&msg=510.5 #2], [http://moi3d.com/forum/index.php?webtag=MOI&msg=623.1 #3], <br />
[http://moi3d.com/forum/index.php?webtag=MOI&msg=556.1 #4],<br />
[http://moi3d.com/forum/index.php?webtag=MOI&msg=538.6 #5],<br />
[http://moi3d.com/forum/index.php?webtag=MOI&msg=536.1 #6]<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://moi3d.com/forum/index.php?webtag=MOI&msg=1175.3 Simple ring using rail revolve], <br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://moi3d.com/forum/index.php?webtag=MOI&msg=1175.5 Simple ring using sweep + scaling rail for more control]<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://moi3d.com/forum/index.php?webtag=MOI&msg=1057.1 Product design forums modeling challenges] <br />
<small>(not specific to MoI but useful for general CAD modeling strategy).</small><br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://moi3d.com/forum/index.php?webtag=MOI&msg=606.4 Simple Intarsia type design]<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://moi3d.com/forum/index.php?webtag=MOI&msg=1171.2 Creating a 3-toed base foot]<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://vimeo.com/30168354 Flow workflow video ]from danperk<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://3dcncguitars.com/ Tutorials for guitar modeling in MoI and Rhino and CNC production]<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://moi3d.com/forum/index.php?webtag=MOI&msg=8845.16 Car modeling techniques] by Zarkow, and [http://moi3d.com/forum/index.php?webtag=MOI&msg=8845.5 #2] and [http://moi3d.com/forum/index.php?webtag=MOI&msg=9956.1 video tutorials]<br />
<br />
<br />
<br />
|<br />
[[File:Img_wiki_homepage.png|25px]] [https://gumroad.com/l/fGqqS MoI for Game Assets video tutorial] by Arrimus 3D - 5 hours $9.99 on Gumroad<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://moiusers.blogspot.com/ Introductory videos ]by Tom Meeks - videos with narration covering a lot of basics.<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://moi3d.com/forum/index.php?webtag=MOI&msg=6058.1 Videos from Andrei Samardac]<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://moi3d.com/forum/index.php?webtag=MOI&msg=3842.1 Video on modeling a SpacePilot controller] from lyes <br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://vimeo.com/channels/moi3d Vimeo channel with tutorials] from lyes<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://bitreality.blogspot.com/ Joe's classical column video tutorials]<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://moi3d.com/forum/index.php?webtag=MOI&msg=402.9 Japanese bathtub tutorial]<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://moi3d.com/forum/index.php?webtag=MOI&msg=446.17 Object repair tutorial]<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://moi3d.com/forum/index.php?webtag=MOI&msg=2546.1 Ferrari 599 GTB tutorial videos ]by lyes<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://moi3d.com/forum/index.php?webtag=MOI&msg=2429.1 Snowman figure ]by PaQ<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://cid-30cffdfa97399495.skydrive.live.com/self.aspx/.Public/Accurate|_Tapers|_MoI|_V2.zip Accurate tapers using Expressions] by Danny <br />
<small>(Not really needed since Extrude now has a taper function good if you want to learn basic trig) D.T.</small><br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://moi3d.com/forum/index.php?webtag=MOI&msg=3814.1 Discussions on ship hull techniques]<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://moiscript.weebly.com/ Videos: Functions of the Manual] by Pilou ( [[File:fr_flag.png]] in French)<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://vimeo.com/30765016 Making accurate screw threads video ]from OSTexo<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://moi3d.com/forum/index.php?webtag=MOI&msg=9790.1 Scooter tutorail ]from Mauro<br />
<br />
|}<br />
<br />
== Helper programs ==<br />
Some standalone small programs to help accomplish specific tasks.<br />
<br />
=== Obj23dmWireframe converter ===<br />
[http://moi3d.com/download/Obj23dmWireframe.zip Download Obj23dmWireframe converter]<br />
<br />
This enables bringing polygon data in an .obj file into MoI to use as a construction guide.<br />
Unzip it to some folder, and then you can run the Obj23dmWireframe.exe program. It will prompt you for the name of an .obj file to read, and after that the name of a .3dm file to create. It will read all the polygon data from the obj file and convert the edges of polygons into line segments, and then write those line segments to the 3dm file. You can then load that 3dm file into MoI and use those line segments to snap on to. Originally posted on the forum [http://moi3d.com/forum/index.php?webtag=MOI&msg=1099.1 here].<br />
<br />
=== MergeOBJ utility ===<br />
[http://moi3d.com/download/MergeOBJ.exe Download MergeOBJ utility]<br />
<br />
This utility program can combine several input OBJ files into one single OBJ file. This may be useful if you want to build up a set of different OBJ files possibly by exporting pieces with different mesh settings, and then combine them into one OBJ file if your target program wants to work with only a single file. This was created because the freely available mesh editing tools have a tendency to remove vertex normals when combining files together, this utility will preserve vertex normals. Announced on the forum [http://moi3d.com/forum/index.php?webtag=MOI&msg=3570.12 here].<br />
<br />
=== Old utilities ===<br />
[http://moi3d.com/download/3dmCurves2DXF.zip 3dmCurves2DXF converter] - This could convert curves in a 3DM file to a DXF file to be used for CAM programs. It's not needed anymore since MoI v3 now directly supports DXF file export.<br><br><br />
These utilities were to help with MoI v1 which did not export material assignments to OBJ files. Since MoI v2 can control material assignments by assigning Styles, these are no longer necessary but are still included here for v1 users.<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;[http://moi3d.com/download/SeparateOBJ.zip SeparateOBJ editor] - Breaks an OBJ file exported from MoI v1 into smaller pieces and puts separate material assignments on each piece for import into programs that require that.<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;[http://moi3d.com/download/MergeOBJ_old.zip MergeOBJ editor (old version)] - Edits an OBJ file to combine all the different objects in it into one single object so there will be just one material for the whole thing.</div>Michael Gibsonhttp://moi3d.com/wiki/index.php?title=V4Beta&diff=1008V4Beta2021-03-30T10:08:00Z<p>Michael Gibson: </p>
<hr />
<div><big>Release notes for each V4 beta release are gathered here.</big><br />
<br />
== Nov-12-2017 ==<br />
<br />
[http://moi3d.com/forum/index.php?webtag=MOI&msg=8675.1 Forum announcement]<br />
<br />
V4 is a major rewrite with changes on many levels so please be on the lookout for any bugs.<br />
<br />
The main new functionality is that MoI is now a 64-bit program for both Windows and Mac and the Mac version is a native build and doesn't use Wineskin anymore.<br />
<br />
New system requirements are Windows 7/8/10 64-bit or macOS 10.8 - 10.13 .<br />
<br />
Polygon conversion can now use all your system memory instead of running into 32-bit memory limits.<br />
<br />
A lot of various little quirky things should be tuned up for the Mac version.<br />
<br />
The only known areas still not quite working yet are snap text labels and dotted/dashed line styles in viewports and Mac trackpad gestures aren't fully functional yet.<br />
<br />
<br />
== Nov-18-2017 ==<br />
<br />
[http://moi3d.com/forum/index.php?webtag=MOI&msg=8682.1 Forum announcement]<br />
<br />
Bug fixes:<br />
<br />
Fix for the frozen UI bug when restoring a maximized main window from a minimized or hidden state. Please let me know if you see it again.<br />
<br />
Fix Mac deployment issue that was preventing things from working on OS X 10.8 and 10.9, MoI should run ok there now.<br />
<br />
Fix font name bug where MoI V4 would overwrite the UI font name property that V3 uses in moi.ini and so the V3 UI font changed after you ran V4. They should now stay separate.<br />
<br />
Fix bug where dropdown controls in commands wouldn't reinitialize to their last used value. Reported by bemfarmer in the forum here:<br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=8675.204<br />
<br />
Fix construction line snapping bug reported in the forum by Moujiik here:<br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=8675.119<br />
<br />
Not a whole lot of changes, normally I would have waited until a bit more were batched up but the frozen UI bug was pretty significant so I wanted to try and nail that one down soon.<br />
<br />
<br />
== Nov-27-2017 ==<br />
<br />
[http://moi3d.com/forum/index.php?webtag=MOI&msg=8704.1 Forum announcement]<br />
<br />
Bug fixes:<br />
<br />
Saving to IGES and STEP files - fixed a bug where using .stp or .igs file extensions wasn't working on Mac.<br />
<br />
Mac full screen mode - fix for the problem where the view controls window would show on the desktop space, sending you back to the desktop the first time you moved the mouse over a viewport after going to full screen. Please let me know if you see it again.<br />
<br />
Updated shortcut key editor - Make the "Key" column expand to whatever width is necessary to show the longest key combo. Fixes problem reported in the forum by Metin here:<br />
http://moi3d.com/forum/messages.php?webtag=MOI&msg=8682.42<br />
<br />
Viewport toolbar - fixed a bug where doing view manipulation using the bottom viewport toolbar could miss the mouse up event and get stuck.<br />
<br />
Orientation picker - fixed a sporadic drawing bug with the orientation picker reported on the forum by Max here:<br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=8682.16<br />
<br />
Shortcut keys with Shift - Fixed a bug in shortcut keys using shift + number keys. V4 was generating Shift+1 as Shift+! which was incompatible with V3, V3 would convert it back to Shift+1 which was then not recognized by V4. V4 should now generate Shift+1 for that key combination and not Shift+! anymore. Fixes a bug reported on the forum by Marco here:<br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=8682.50<br />
<br />
Background images - Fixed a crash when making a background image from a bitmap file with lower than 32-bit color depth. Reported on the forum by Vladimir here:<br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=8682.100<br />
<br />
Undo - Fixed a bug where undo wouldn't find the proper object to restore in some cases. Reported on the forum by Val here:<br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=8682.83<br />
<br />
<br />
Scripting:<br />
<br />
moi.geometryDatabase.findStyle() - fixed a bug in the findStyle() function for the "create if not found" case, reported on the forum by Max here:<br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=8682.16<br />
<br />
obj.getBoundingBox() - The boolean parameter for getting high accuracy bounds was marked as required in v4, while in v3 it was optional with a default of false. Updated v4 to match v3.<br />
<br />
moi.filesystem.openFileStream - switch to use QTextStream for reading to get better unicode support. Unicode files with byte order marks should be supported now, the default will be UTF-8 if no byte order mark is found. Also added new methods .setWriteBOM( boolean ) which you can call to make writing a text file write the byte order mark at the front (default is no BOM), and .setCodec( name ) to have specific control over what encoding to use for reading or writing. Supported codecs are listed here: http://doc.qt.io/qt-5/qtextcodec.html#details .<br />
<br />
moi://appdata/ - add support for moi://appdata/ URLs so you can load HTML resources like images from the MoI app data directory. moi://appdata/ will resolve to %AppData%\Moi on Windows and to ~/Library/Application Support/Moi on Mac.<br />
<br />
String to integer conversion - Updated so a string value of "1.0" will be successfully converted to an integer value of 1 rather than rejecting it. Fixes a change in behavior from v3 to v4 that broke some of Brian's scripts.<br />
<br />
factory.setValue() - switched to v3 behavior so sending the wrong object type doesn't trigger an exception. Fixes the SpurGearProfile script.<br />
<br />
<br />
== Dec-11-2017 ==<br />
<br />
[http://moi3d.com/forum/index.php?webtag=MOI&msg=8731.1 Forum announcement]<br />
<br />
Bug fixes and changes:<br />
<br />
Mac full screen mode - getting sent back to the desktop the first time you moved the mouse over each viewport after going to full screen mode should be finally fixed! Also Ctrl+Cmd+F shortcut key for full screen toggle should now work.<br />
<br />
Mac trackpad and Magic Mouse - Finished implementing multitouch view navigation for the trackpad and Magic Mouse on Mac. Magic Mouse should be back to zooming instead of panning. The Zoom speed can be adjusted in moi.ini [MultiTouch] MagicMouseZoomSpeed=1.0 . Change this to something like 2.0 to make the default behavior faster or 0.5 to go slower. You can also hold down the Ctrl key to go slower as well.<br />
<br />
Mac ignored mouse bug - Fix for bug where mousemove events would stop working in certain conditions when restoring the main window from hidden or showing a modal dialog. Fixes bug reported by Finema here: http://moi3d.com/forum/index.php?webtag=MOI&msg=8675.189<br />
<br />
Updated "On" object snap mechanics - Changed the way On object snap for curves works to get better accuracy with curves far from the origin.<br />
<br />
Incorrect default values for some commands - Fixed a bug where the default values for the Text and Rebuild commands were incorrect on locales that use commas for the decimal separator. Reported by Vladimir on the forum here: http://moi3d.com/forum/index.php?webtag=MOI&msg=8704.32<br />
<br />
Trim - fixed a bug in the Edit &gt; Trim command where if an object was set to be both an object to be trimmed as well as a cutting object it could get hidden unexpectedly.<br />
<br />
Command button highlighting - Fix for command buttons remaining highlighted after command ends. Reported by Vladimir on the forum here: http://moi3d.com/forum/index.php?webtag=MOI&msg=8704.32<br />
<br />
Read-only file handling - Fix bug where using File &gt; Save wasn't prompting for a new file name when the current opened file was set to read-only. Reported in the forum by mhasse here: http://moi3d.com/forum/index.php?webtag=MOI&msg=8714.1<br />
<br />
Crash fix for newer CPU/Older OS combination - Fix for 0xc000001d illegal instruction exception when running on Win7 SP0 with a newer AVX-capable CPU.<br />
<br />
Hidden-line generation - Increase Canvas megapixel size limit from 175 to 1000.<br />
<br />
Degenerate box error - fixed bug where a script error would be displayed if you made a degenerate rectangle in any of the Draw solid &gt; Box commands.<br />
<br />
Update text input fields - Text input fields were only applying typed in values when the input panel was open, or when the Enter or Tab keys were pressed, not if just clicking outside the field as they now will. Should fix a PDF export dialog bug reported by reported by Moujiik here: http://moi3d.com/forum/index.php?webtag=MOI&msg=8704.15<br />
<br />
<br />
Scripting:<br />
<br />
viewport.setCameraAndTarget() - Fixed bug in viewport.setCameraAndTarget() function, reported in the forum by Ralf here: http://moi3d.com/forum/index.php?webtag=MOI&msg=8704.25<br />
<br />
Process memory use limit - Added option in moi.ini for limiting maximum memory use - Windows only. Can be set in moi.ini under [Settings] MaxProcessMemoryUse=x . Requested by Burr on the forum here: http://moi3d.com/forum/index.php?webtag=MOI&msg=8704.26<br />
<br />
moi.view.screenshot - Fix bug where the moi.view.screenshot() method was capturing the wrong area of the screen on Mac.<br />
<br />
<br />
Enable setting default values for controls from shortcut keys. UI controls can now be triggered or initialized with custom values if the control's id is supplied in the command-line parameters for the command. For buttons, the presence of the button's id value in command line parameters will trigger a UI event for the button the first time that it is shown, this will have the same effect as clicking the button.<br />
For dropdowns and checkboxes, the presence of the control's id in an id=value pair will use that value to initialize the control rather than taking the last used or default value as normal.<br />
<br />
This makes it possible to set up shortcut keys that package up different options within commands, for example:<br />
<br />
Trim addtrimpoints removekeepmode=keep<br />
<br />
Trim addtrimpoints removekeepmode=remove<br />
<br />
Trim isocurve isodir=u<br />
<br />
Trim isocurve isodir=v<br />
<br />
Line bothsides=true<br />
<br />
Extrude tapered<br />
<br />
<br />
<br />
== Feb-9-2018 ==<br />
<br />
[http://moi3d.com/forum/index.php?webtag=MOI&msg=8814.1 Forum announcement]<br />
<br />
Text labels inside viewports still not implemented yet, that's the last remaining thing still left to get v4 fully caught up.<br />
<br />
<br />
Bug fixes and changes:<br />
<br />
<br />
Dashed/Dotted line styles implemented so things like the grid, construction lines, and hidden line display should be looking proper now.<br />
<br />
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.<br />
<br />
DXF import layers - Support reading layers in the DXF file as Styles in MoI.<br />
<br />
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<br />
<br />
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.<br />
<br />
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.<br />
<br />
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.<br />
<br />
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<br />
<br />
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.<br />
<br />
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.<br />
<br />
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.<br />
<br />
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<br />
<br />
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<br />
<br />
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.<br />
<br />
Windows shutdown bug - Fix bug when shutting down Windows while MoI is still open reported by Vladimir in the forum here:<br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=8731.81<br />
<br />
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<br />
<br />
Fix crash on program shutdown if license key dialog was canceled.<br />
<br />
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<br />
<br />
<br />
<br />
Scripting:<br />
<br />
Added additional script interface for Curve and CurveSegment objects.<br />
<br />
For both Curves and CurveSegments:<br />
<br />
crv.domainMin - Property that returns lower bound of the curve's parametric domain.<br />
<br />
crv.domainMax - Property that returns upper bound of the curve's parametric domain.<br />
<br />
crv.evaluatePoint( t ) - Function returning a point for the given parameter value.<br />
<br />
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.<br />
<br />
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.<br />
<br />
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...<br />
<br />
crv.isPlanar - Property that returns true if the curve's control polygon is planar.<br />
<br />
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.<br />
<br />
crv.isOnPlane( frame ) - Function that returns true if the curve is on the given frame's x/y plane.<br />
<br />
crv.isOnParallelPlane( frame ) - Function that returns true if the curve is on a plane parallel to the given frame's x/y plane.<br />
<br />
crv.isClosed - Property that returns true if the curve is closed.<br />
<br />
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).<br />
<br />
crv.isDegenerate - Property that returns true if the curve has a degenerate control polygon with all the points stacked in the same spot.<br />
<br />
crv.isLine - Property that returns true if the curve has the shape of a line.<br />
<br />
crv.isSimpleLine - Property that returns true if the curve is a simple line segment made up of only 2 control points.<br />
<br />
crv.isCircle - Property that returns true if the curve is a circle.<br />
<br />
crv.isArc - Property that returns true if the curve is a circular arc.<br />
<br />
crv.isEllipse - Property that returns true if the curve is an ellipse (either a full ellipse or an elliptical arc).<br />
<br />
crv.conicFrame - Property that returns the coordinate frame of a circle, arc, or ellipse. Only valid if isCircle, isArc, or isEllipse returns true.<br />
<br />
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.<br />
<br />
crv.conicRadiusY - Property that returns the y-axis radius of an ellipse. Only valid if isEllipse returns true.<br />
<br />
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.<br />
<br />
<br />
The following only apply to Curves, not CurveSegments:<br />
<br />
crv.isClickSelected - Property that returns true if the curve was selected by a mouse click action.<br />
<br />
crv.clickSelectionPoint - Property that returns the point on the curve where it was click selected. Only valid if isClickSelected returns true.<br />
<br />
crv.clickSelectionParam - Property that returns the parameter value of the curve where it was click selected. Only valid if isClickSelected returns true.<br />
<br />
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.<br />
<br />
<br />
Added moi.ui.systemDPI property.<br />
<br />
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.<br />
<br />
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.<br />
<br />
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.<br />
<br />
Add a container with id="CommandBarCustomUI" in CommandBar.htm to make it easier to populate the UI from a startup script.<br />
Example:<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;var container = moi.ui.commandBar.CommandBarCustomUI;<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;container.insertAdjacentHTML( 'beforeEnd', '<moi:CommandButton>Test1</moi:CommandButton>' );<br />
<br />
Appdata/scripts directory - you can add a scripts folder inside appdata and MoI will also check there for running an "instant script".<br />
<br />
<br />
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.<br><br />
The trackpadgesture event object has these properties:<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;event.gestureType : string value of 'Scroll', 'SmartZoom', 'Zoom', or 'Rotate'.<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;event.deltaX, event.deltaY : movement for Scroll , 2 fingers swiping.<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;event.numTouches : number of touch points being used for Scroll.<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;event.scaleFactor : scale factor for pinch/zoom<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;event.angle : angle change for Rotate.<br><br />
<br />
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();<br />
<br />
<br />
== May-12-2018 ==<br />
<br />
[http://moi3d.com/forum/index.php?webtag=MOI&msg=8936.1 Forum announcement]<br />
<br />
I think this version is all caught up now, the last remaining things that were missing from v3 such as text labels inside viewports are now implemented and all regression bugs that have been reported should now be fixed. So if that holds up this should be a major milestone for v4 where I'll now be switching to working on new features rather than rewriting stuff from v3.<br />
<br />
Bug fixes and changes:<br />
<br />
<br />
Implemented text rendering inside viewports for things like snapping tag labels ("End", "Mid", etc...)<br />
<br />
OBJ export - Fixed bug where invalid OBJ file would be generated if object names had extended characters in them. Reported through e-mail by Lewis.<br />
<br />
STEP import - Fixed crash bug in STEP import reported through e-mail by John Lewis.<br />
<br />
iMac Pro draw speed - Fixed bug where too frequent UI updates caused a noticeable draw speed slowdown compared to V3 on some high dpi Mac machines. Fixes bug reported by Metin.<br />
<br />
Mouse cursors - Fixed various bugs where the mouse cursor wasn't updating properly, reported by Vladimir in the forum here:<br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=8814.128<br />
<br />
Text field right click context menu - Fixed a bug with right click on text input fields in menus being offset.<br />
<br />
Menu hover state - Fixed a bug where when launching a menu, the button hover state on the launching UI would get stuck until another click.<br />
<br />
Color picker custom colors - Custom colors set in the color picker dialog are now saved to and restored from moi.ini so they will persist between program sessions.<br />
Fixes bug reported by Moujiik on the forum here: http://moi3d.com/forum/index.php?webtag=MOI&msg=8855.5<br />
<br />
Object properties - Fixed bug where cached objects in the async worker process wouldn't get updated if style, name, or selection changed.<br />
Fixes bug reported on the newsgroup by Brian here: http://moi3d.com/forum/index.php?webtag=MOI&msg=8814.81<br />
<br />
Selection filter crash - Fix for crash when setting a style selection filter, reported by Shane on the forum here: http://moi3d.com/forum/index.php?webtag=MOI&msg=8872.1<br />
<br />
Busy script interruption - Scripts that do a lot of calculation in loops can now be interrupted by pushing the Escape key.<br />
Requested on the forum by Marco here: http://moi3d.com/forum/index.php?webtag=MOI&msg=8814.63<br />
<br />
Trackpad scroll gesture - Fix bug where Mac trackpad scroll gesture could be treated as a mouse wheel event,<br />
if the first touch happened on a different window.<br />
Fixes bug reported by Max in the forum here: http://moi3d.com/forum/index.php?webtag=MOI&msg=8814.21<br />
<br />
DXF export arcs and circles - Previously arcs and circles that had a normal vector pointing straight down in the negative z axis direction would get flipped in the export, because there are a couple of programs that do not read those correctly. But this direction flip is bad for CNC usage, so the default now is to not flip them. It is possible to return to the previous flipping behavior by a setting in moi.ini: [DXF Export] FlipNegativeZAxisCirclesAndArcs=y<br />
Fixes a bug reported in the forum by Vladimir here: http://moi3d.com/forum/index.php?webtag=MOI&msg=6925.419<br />
<br />
VSync - Added option in moi.ini to limit screen redraw with vsync, might help if you are experiencing a tearing type effect in the display.<br />
Can be set under [View] VSync=y . Requested by torsten in the forum here: http://moi3d.com/forum/index.php?webtag=MOI&msg=8814.140<br />
<br />
Additional command dirs - Add moi.ini setting under [Commands] AdditionalCommandsDirs= which can be set to a semi-colon delimited list of additional directories to look for commands, in addition to the built in commands and appdata commands.<br><br />
[Commands]<br><br />
AdditionalCommandsDirs=c:\path1;c:\path2<br><br />
Requested on the forum by Hamish here: http://moi3d.com/forum/messages.php?webtag=MOI&msg=8814.97<br />
<br />
FBX export vertex colors - Add option in moi.ini for writing vertex colors to FBX exports. Can be enabled by setting:<br><br />
[FBX Export]<br><br />
WriteVertexColors=y<br><br />
Requested by Stefan in the forum here: http://moi3d.com/forum/index.php?webtag=MOI&msg=8853.5<br />
<br />
Graphics API override - Add moi.ini option for which graphics API to use. <br />
On Windows or Linux/Wine a specific render engine can be controlled by a setting in moi.ini, under the [View] section, GraphicsAPI key:<br><br />
[View]<br><br />
GraphicsAPI=Direct3D11<br><br />
or<br><br />
GraphicsAPI=OpenGL<br />
<br />
Startup working directory - Add moi.ini options for setting the initial working directory on startup.<br><br />
[Settings]<br><br />
StartupWorkingDirectory=<br><br />
SaveWorkingDirectoryAtExit=n<br><br />
Requested by Marc in the forum here: http://moi3d.com/forum/index.php?webtag=MOI&msg=8814.88<br />
<br />
Trackpad as mouse wheel - Add setting in moi.ini for making Mac trackpad scroll used as a mouse wheel zoom as older MoI versions did.<br><br />
[MultiTouch]<br><br />
UseTrackpadScrollAsMouseWheel=y<br><br />
Requested by Marc in the forum here: http://moi3d.com/forum/index.php?webtag=MOI&msg=8814.88<br />
<br />
<br />
<br />
== Jun-6-2018 ==<br />
<br />
[http://moi3d.com/forum/index.php?webtag=MOI&msg=8966.1 Forum announcement]<br />
<br />
New stuff:<br />
<br />
Major overhaul of STEP/IGES/SAT importing.<br />
<br />
These imports will now no longer block the main thread so it won't look like MoI is frozen while it is loading a big file.<br />
<br />
The loading happens in 2 phases, first an initial scan of the file that doesn't do too much work except logging the structure of where objects are located. Then the next heavier phase of processing the objects will make use of multiple CPU cores for a major speed increase. So there should be a very substantial performance increase in loading large STEP, IGES, or SAT files in this version.<br />
<br />
Also the HarmonyWare libraries used for working with these formats have now been updated from version 1.7.11 to the latest 2.0.8 release and there are a lot of bug fixes from that. A notable one is that some incorrect positioning of instances should be good now. Also some other fixes on MoI's side should make for colors coming through from STEP files that were previously missed.<br />
<br />
It would be cool to hear how the new multi-core enabled importer performs on some big files compared to MoI v3!<br />
<br />
Also please let me know if you see any new problems with any particular imports. If you do please try to send the file to me at moi@moi3d.com so I can test with it over here, I will keep any files confidential.<br />
<br />
<br />
Other things:<br />
<br />
Window selection Mac - Fix for sluggish selection window dragging reported by James through e-mail.<br />
<br />
Properties panel size display - Adjusted the quick size calculation for the properties panel to hopefully increase accuracy a little.<br />
<br />
Properties panel - Report closed edges as a distinct object type. Fixes an issue of inconsistent behavior between curves and edges reported through e-mail by Scott.<br />
<br />
Edit frame grip size - Added option in moi.ini for setting edit frame grip handle pixel size, so it can be adjusted for higher res displays,<br />
Requested by Barry in the forum here: http://moi3d.com/forum/index.php?webtag=MOI&msg=8960.1<br><br />
[View]<br><br />
EditFrameGripPixelSize=24<br />
<br />
DisableOnSrfInOrtho setting - Added scripting access to DisableOnSrfInOrtho setting so it can be toggled at runtime under moi.drawingAids.disableOnSrfInOrtho . Requested on the forum by immortalx here: http://moi3d.com/forum/index.php?webtag=MOI&msg=8947.1<br />
<br />
NURBS Export RotateZUpToYUp option - Added option in moi.ini for option for exporting STEP/IGES/SAT formats to rotate the export to a Y up coordinate system.<br><br />
[NURBS Export]<br><br />
RotateZUpToYUp=y<br />
<br />
Update viewport right click - Don't push Cancel buttons with a viewport right click, it's too easy to accidentally cancel a long file import or things like that.<br />
<br />
<br />
<br />
== Aug-28-2018 ==<br />
<br />
[http://moi3d.com/forum/index.php?webtag=MOI&msg=9044.1 Forum announcement]<br />
<br />
The main focus for this beta is performance enhancements.<br />
<br />
3DM files will now use multiple CPU cores for loading so large files should load significantly faster and show a progress bar.<br />
<br />
Also the display engine has been enhanced to take advantage of modern GPUs - display data is now cached in the GPU's VRAM which should result in faster redraw speed for large files.<br />
<br />
<br />
Other bug fixes and changes:<br />
<br />
Mac version multiple windows - Add "Window" menu to Mac version top menu. Shows all open files and allows switching between them easier. Also support Cmd+Tilde (Cmd+~) and Cmd+Shift+Tilde for switching to next/prev window.<br />
<br />
Construction line bug fix - Fix construction line creation bug reported by jopo in the forum here:<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=8966.53<br />
<br />
Object drag bug fix - fix bug for moving the mouse over another viewport when dragging objects. Reported by Burr on the forum here:<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=9016.1<br />
<br />
Mac AMD performance - fix problem with default buffer location with OpenGL on some AMD cards that was causing slow redraws on some machines like iMac pro.<br />
<br />
Updated Mac file open behavior. To match the Mac document based application framework behavior, if a file is opened by drag/drop or by double-clicking on the desktop icon do not open a new window for it if there is an existing window with it already open.<br />
<br />
3DS Max zoom compatibility - Added moi.ini option for Alt+Ctrl+MMB zoom for 3DS Max compatibility. Can be set under:<br><br />
[View]<br><br />
AltCtrlMMBZoom=y<br><br />
<br />
Object snap labels on left side - Add moi.ini option to make object snap labels shown to the left of the target point, can be useful if you're drawing directly on a screen such as with a Cintiq screen. Can be set in moi.ini under:<br><br />
[Drawing Aids]<br><br />
ShowObjectSnapLabelToLeft=n<br><br />
<br />
Shortcut keys update - On Windows if there is a [Shortcut Keys Mac] section of the moi.ini file, read and write shortcuts from there so you can copy the moi.ini file over from Mac to Windows. Fixes issue reported on the forum by Matt here:<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=8970.1<br />
<br />
STEP import bug fix - Fixed import bug for file MF2018.STEP getting stuck at 36%, reported on the forum by Marco here:<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=8966.9<br><br />
Also fixed a different STEP import bug reported by Eric Bucy through e-mail.<br />
<br />
Fixed file loader UI bug - Fix bug where main window would not maximize properly when trying to show progress bar UI before main window was initially displayed, such as when MoI launched by double clicking a STP file. Fixes bug reported in the forum by OSTexo here:<br><br />
OSTexo http://moi3d.com/forum/index.php?webtag=MOI&msg=8966.40<br />
<br />
File notes - Add notes property that is saved to and loaded from .3dm files. Can be accessed by setting up a shortcut key with:<br><br />
script: moi.ui.createDialog( 'moi://ui/NotesDialog.htm', 'resizeable' );<br />
<br />
Viewport right click option - Add option for v3 behavior of right clicking in a viewport working as a shortcut for pushing the Cancel button when a command only has Cancel and not Done. Can be set in moi.ini under:<br><br />
[View]<br />
DoRightClickCancel=y<br />
<br />
Add new appdata directory option - MoI will now look for an appdata directory that has been created alongside "commands", "ui", etc... and if found will use that location as the appdata folder, to make it possible to store everything within a single directory.<br />
<br />
Add moi.ini setting for selection hit test radius<br><br />
[View]<br><br />
SelectionHitTestRadius=12<br><br />
<br />
Scene browser scripting - Added script access to scene browser items so it is possible to make a startup script that expands sections on program startup. To do that put the following in a .js file in your Moi appdata startup folder:<br><br />
var items = moi.ui.sceneBrowser.rootItems;<br><br />
for ( var i = 0; i &lt; items.length; ++i )<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;items[i].expanded = true;<br />
<br />
<br />
== Oct-17-2018 ==<br />
<br />
[http://moi3d.com/forum/index.php?webtag=MOI&msg=9100.1 Forum announcement]<br />
<br />
The main focus for this beta is a polygon sub-d surface to NURBS conversion method, available on the side pane under SubD > Create > From file. This allows you to open an .obj file that contains a sub-d polygon cage and have it converted to a high quality NURBS object in MoI.<br />
<br />
Some other stuff:<br />
<br />
Settings for page size are now available in PDF/AI exports.<br />
<br />
Fixed crash bug when modifying display mesh angle.<br />
<br />
Updated STEP export to fix problem with object names not coming through to SolidWorks, Fusion360 and KeyShot.<br />
<br />
Added moi.ini option to set current file name with foreign file types. In moi.ini under [Settings] SetNameWhenOpeningAllFileTypes=y When set, the current file name is set for all file opens not just .3dm files. Requested by Alex on the forum here: http://moi3d.com/forum/index.php?webtag=MOI&msg=9044.41<br />
<br />
Updated DXF export to allow the dialog to be suppressed and options set by script. Parameters that can be set are:<br><br />
// DXF export function parameter options:<br><br />
//<br><br />
// NoUI=true<br><br />
// ExportType=2d | 3d<br><br />
// ProjectionView=top | 3d | front | right<br><br />
// WriteCurvesAs=splines | cubicsplines | polylines<br><br />
// PolylineAngleDegrees=10.0<br><br />
// UseSimpleEntities=true<br><br />
// NumDecimalPlaces=12<br><br />
//<br><br />
// GenerateHiddenLines=false<br><br />
// HiddenLineLayerMode=fromstyle | custom<br><br />
// HiddenLineLayerName=Hidden lines (layer name to use when layer mode = custom)<br><br />
// IgnoreTangentEdges=false<br><br />
// Resolution=25.0<br><br />
<br />
<br />
== Feb-27-2019 ==<br />
<br />
[http://moi3d.com/forum/messages.php?webtag=MOI&msg=9266.1 Forum announcement]<br />
<br />
New stuff:<br />
<br />
Numerous fixes for SubD import crashes and translation issues.<br />
<br />
Fix for SubD imports on objects of small scale.<br />
<br />
Fix for SubD imports with meshes that have multiple volumes that partially overlap each other. Previously these could sometimes not get separated into different solids properly.<br />
<br />
Update SubD import to read materials from the .obj file and make Styles from them in MoI. Also patch combining will pay attention to material assignments<br />
so patches will not get combined across different materials. Can be disabled under Options > Import/Export > SubD import options > "Use materials" checkbox.<br />
<br />
Add SubD import option for either fewer patches but with denser surface control points, or more patches around extraordinary vertices but with fewer surface<br />
control points in regular areas of the mesh. Set under Options > Import/Export > SubD import options > "Patch type".<br />
<br />
Update multiple selection - Add option for doing multiple selection only when shift key is down. Options > General > Multiple selection: "Always" or "Only when Shift is down".<br />
<br />
Fix cylinder boolean union bug. There was a bug with combining cylinders in boolean union when the cylinders had opposite axis directions. This was the cause of some occasional mysterious missing fillets where the fillet surface was ending up displaced some distance away from the trim boundaries.<br />
<br />
Fix a sporadic crash in Chamfer reported through e-mail by Sebastian Bielecki.<br />
<br />
Fix crash in center object snap after copy/pasting an arc edge curve.<br />
<br />
Update tesselator - fix degenerate span display bug. Fixes bug in mesher for making display meshes on surfaces with nearly degenerate spans. Fixes a bug reported through PM by BarryH.<br />
<br />
Add option for scaling STL export to target unit system. Under Options > Import/Export > STL Options > "Export units conversion".<br />
<br />
Update curve filleting - Enable "Constant distance" fillet mode for curves, currently only works for line segments.<br />
<br />
Fix 3DConnexion buttons bug where undo/redo on space mouse button presses was not working, reported by Ivan in the forum here: http://moi3d.com/forum/index.php?webtag=MOI&msg=9130.1<br />
<br />
Update command parameter parsing. Allow quotes to control parameter parsing so values with spaces can be used, for example: ArrayDir mode="Extent, Count" . Fixes a problem reported on the forum by Bravlin here: http://moi3d.com/forum/index.php?webtag=MOI&msg=6087.75<br />
<br />
Update shortcut keys parameters - start and end scripts. Make it possible for shortcut keys to define parameters for oncommandstart="" and oncommandend="" for script to run at the start or end of the command. For example this shortcut will run a script when the line command ends to select it: line oncommandend="moi.geometryDatabase.selectLastCreated();"<br />
<br />
Update shortcut keys for file commands. Enable controlling the file dialog file type with keyboard shortcuts by adding a filetype= option in the shortcut key. For example a shortcut key with: Open filetype=igs will make the file dialog have the .igs file type active. Can be used with Open, SaveAs, Import, and Export commands. Requested in the forum by Peticel here: http://moi3d.com/forum/index.php?webtag=MOI&msg=9118.1<br />
<br />
Update command UI automation - ordering. Some UI events cause the command to finish, so to be able to control a command the ordering of the events needs to be controllable.<br />
Rework the UI event triggering so they are triggered in the order given in the command line parameters. This makes the following possible:<br><br />
extrude tapered draftangle=20 distanceinput=10<br><br />
Previously that didn't work because the distanceinput is earlier in the UI and so got triggered earlier and ended the command before tapered or draftangle could be processed.<br />
<br />
Fix properties panel line length editing bug reported through e-mail by Tim Hickox.<br />
<br />
Fix tolerance bug that could cause small sized objects to get mangled boundaries when joined, regression from v3.<br />
<br />
Fix IGES import joining regression - Make iges entity 128 surfaces join together if joining is enabled, regression from v3.<br />
<br />
Updated IGES import joining - allow T junctures to join instead of only simple matching endpoints only.<br />
<br />
Fix IGES import bug for some cases with edges on seams of closed surfaces. Fixes an IGES file sent through e-mail by Charles Ludeke.<br />
<br />
Fix excessive load time with STEP file that had a degenerate surface in it.<br />
<br />
Update license key file paths - Allow a path to moi_v3_license.key to be passed as a command line parameter or set as an environment variable<br />
like moi_v3_license.key=path . Requested by Mariusz in the forum here: http://moi3d.com/forum/index.php?webtag=MOI&msg=9106.1<br />
<br />
If straight snap snap angle is set to 0, disable x/y plane straight snap line snapping.<br />
<br />
Add warning if running on Mac case sensitive file system.<br />
<br />
Update file dialogs - Save and restore last used file dialog location on all platforms.<br />
<br />
Update file loader progress bar - Add full path as tooltip to file name label.<br />
<br />
Add option for limiting the number of CPU cores used by file loading. Can be set under: [Settings] FileLoaderThreadLimit=x<br />
<br />
Update scripting - exe command line args<br><br />
moi.getExecutableCommandLineArgs() - returns list of command line parameters for launching the executable.<br><br />
moi.geometryDatabase.initialFileToLoad - filename for initial file to load by executable command line parameter.<br />
<br />
Scripting - Add moi.command.currentCommandName property for getting the current running command name by script, or empty string if no command currently running. Requested by Bravlin on the forum here: http://moi3d.com/forum/index.php?webtag=MOI&msg=7238.61<br />
<br />
Update Scene Browser, Types > Edges and Types > Faces behavior. Don't show edges or faces of hidden breps unless shift is down. Makes it easier to turn edges on/off without hidden breps being shown. Requested through e-mail by Tim Hickox<br />
<br />
Update scene browser - Make sure scene browser is initialized before any startup script that wants to access it is run.<br />
<br />
Scene browser script access - Add more script access to SceneBrowser: sceneBrowser.objects, sceneBrowser.types, and sceneBrowser.styles to get the root item for those sections.<br><br />
Added methods to a scene browser item:<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;item.find('name') - will search all children and return an item with that name or null if none present.<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;item.alterStatus(mode,rightclick) - alter the status area of an item, that's the one with the eye icon. Mode can be one of 'show','hide','lock','unlock'. Optional boolean parameter for rightclick will make it behave like a right mouse button click.<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;item.select(mode,rightclick) - alter the selection dot of an item. Mode can be one of 'toggle','select','deselect','filteron','filteroff'. Optional boolean parameter for rightclick will make it behave like a right mouse button click.<br><br />
Here's an example that toggles the selection dot for the Blue item under styles: moi.ui.scenebrowser.styles.find('Blue').select('toggle');<br />
<br />
Fix selection redraw bug on static objects where objects could get stuck looking like they were selected in the Intersect, Project, Silhouette, Join, and Separate commands. Reported through e-mail by James Elliott.<br />
<br />
Fix bug in Add pt with rational curves, reported in the forum by Bravlin here: http://moi3d.com/forum/index.php?webtag=MOI&msg=9216.34<br />
<br />
Fix for wrong selection display on iMac with NVIDIA GeForce GT 750M 1024 MB - work around driver bug.<br />
<br />
Fix for mouse move events getting stacked up on some Mac machines.<br />
<br />
Fix .skp and .fbx format export with unicode file names on Mac. Exporting to .skp or .fbx formats with certain kinds certain kinds of extended characters in the filename would fail.<br />
<br />
Update filename display Mac - Fix bug where filenames with <> characters were being treated as html tags.<br />
<br />
Fix MRU file list Mac - Fixed bug where on Mac if a file had a \ in it, it would not persist to the MRU list properly.<br />
<br />
Fix Mac crash when exporting to .3ds format.<br />
<br />
Fix QtWebKit Ctrl/Meta flippage on Mac. Make the HTML event object use Ctrl for Ctrl and Cmd for Cmd instead of flipped on Mac.<br />
<br />
Turn off viewport display time that was previously always on.<br />
<br />
Update mouse wheel for node editor - dispatch wheel events to canvas elements.<br />
<br />
Fix bug in <moi:Select> control when the <moi:Select> element had keyboard focus when the command UI document was torn down. Fixes bug reported by Bravlin on the forum here: http://moi3d.com/forum/index.php?webtag=MOI&msg=952.31<br />
<br />
Add setting for allowing snap plane change in ortho:<br><br />
[Drawing Aids]<br><br />
AllowSnapPlaneChangeInOrtho=y<br><br />
When set the orientation picker will align to surfaces in ortho views, by default it only aligns to surfaces in the 3D view.<br />
<br />
Update viewport text - fallback fonts. Switch to a fallback font if the regular UI font does not contain glyphs that we are going to be using in the viewport. This enables stuff like Japanese text to render properly in the viewport even if the UI font has not been set to a font with Japanese glyphs in it.<br />
<br />
Update Wine hit testing BGRA textures. Add option to use BGRA for the texture format for off-screen rendering. Make it used by default when running under Wine. Hopefully will solve selection problems where hit test map had unexpected byte ordering on the propietary Nvidia driver, as reported by Ronnie Ashlock.<br />
<br />
Add option to use same color picker dialog as v3 on Windows. Can be set under<br><br />
[Color Dialog]<br><br />
UseV3ColorDialog=y<br><br />
Requested by Barry-H in the forum here: http://moi3d.com/forum/index.php?webtag=MOI&msg=9100.241<br />
<br />
Update scripting moi.view.resetAll() - Update moi.view.resetAll() to take an optional parameter. Can be one of:<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;'auto' - Do automatic toggle between selected or all.<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;'selected' - Only reset to selected objects.<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;'all' - Only reset to all objects.<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;'default' - Reset to default startup views, keeping reversed views (bottom/back/left).<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;'harddefault' - Reset to startup views and get rid of reversed views (bottom view will become top).<br><br />
Requested on the forum by arial here: http://moi3d.com/forum/index.php?webtag=MOI&msg=8123.39<br />
<br />
Update edit style shortcut. Make Ctrl+Left click on the style line in the properties panel also work as a style edit shortcut in addition to right-click. Requested by shane in the forum here: http://moi3d.com/forum/index.php?webtag=MOI&msg=9245.5<br />
<br />
Add moi.ini option for window select behavior.<br><br />
[Selection]<br><br />
WindowSelectMode_Combo_Intersect_Contained=Combo<br><br />
Can be one of "Combo", "Intersect", or "Contained".<br />
<br />
Update mesh export - allow generating empty mesh files when saving to OBJ, STL, 3DS, LWO, FBX, or SKP mesh formats. Requested by Mikael Sundell for pipeline integration.<br />
<br />
<br />
== Oct-10-2019 ==<br />
<br />
[http://moi3d.com/forum/index.php?webtag=MOI&msg=9526.1 Forum announcement]<br />
<br />
The primary focus for this release is a new detailed object properties dialog and new annotation/dimension tools on the "Dim" tab in the side pane.<br />
<br />
The new extended properties dialog is triggered by the "Details..." button in the Properties Panel here:<br />
<br />
http://moi3d.com/forum/get_attachment.php?webtag=MOI&hash=f48bc5937a8f8647858ee122f26fd746&filename=detailed_object_properties1.png<br />
<br />
The Type: section of the detailed object properties dialog will give some additional information about the object type:<br />
<br />
http://moi3d.com/forum/get_attachment.php?webtag=MOI&hash=f523480b2b9504254b2208f7bdadf912&filename=detailed_object_properties2.png<br />
<br />
For curves it will report if it is an open curve or closed curve, whether it has the shape of a line, polyline, circle, arc, ellipse, elliptical arc, whether it is planar and the number of segments in the curve.<br />
<br />
For surface/solid objects it will report if it is a solid, open joined surface, or open individual surface, if it is a planar surface, the number of joined edges, number of naked edges, and number of faces.<br />
<br />
For edges it will report open, closed, joined, naked, line, circle, ellipse, elliptical arc, and planar.<br />
<br />
For a face selected it will report if it is a planar face.<br />
<br />
For an annotation selected it will report if it is a linear dimension, radial dimension, angular dimension, leader, or annotation text.<br />
<br />
When multiple objects are selected it will make a combined report like this:<br />
<br />
http://moi3d.com/forum/get_attachment.php?webtag=MOI&hash=a41d725c0dbdec497aebe4b79123c060&filename=detailed_object_properties3.png<br />
<br />
The type labels can be clicked on to filter the selection down to just the objects that match that label:<br />
<br />
http://moi3d.com/forum/get_attachment.php?webtag=MOI&hash=2dfca899ad8b98dc077ef0274ccf96d7&filename=detailed_object_properties4.png<br />
<br />
You can also hold down the shift key which will allow you to click multiple labels and the filtering will be triggered when you release the shift key. Holding down the Ctrl key while clicking on a label will remove its objects from the selection.<br />
<br />
Lower down on the dialog there are sections for Curve properties, Solid or surface properties, and Annotation properties if any of those types of objects are selected:<br />
<br />
http://moi3d.com/forum/get_attachment.php?webtag=MOI&hash=a2c2884805bea74d3f1008fa82fa241f&filename=detailed_object_properties5.png<br />
<br />
There you can calculate the length of curves, the surface area or volume of a surface or solid, and adjust properties for annotation objects.<br />
<br />
When you click the "Calc" button to calculate a value the button will be replaced with a numeric value and a small "Copy" icon will appear next to it. You can click on the value to copy it to the system clipboard.<br />
<br />
<br />
The other major new feature area are annotation objects which can be used to add dimensions and text to your model to use for documentation.<br />
<br />
These are added by 7 new commands in the Dim tab on the side pane here:<br />
<br />
http://moi3d.com/forum/get_attachment.php?webtag=MOI&hash=3ac8aa861ce0381ee8a301bb1f7eda82&filename=dim_tab.png<br />
<br />
The DimHorizontal command creates a linear dimension going in the x-axis direction of the construction plane:<br><br />
http://moi3d.com/forum/get_attachment.php?webtag=MOI&hash=adade4b11952793ad9e912e04ac1ee9d&filename=DimHorizontal.png<br />
<br />
The DimVertical command creates a linear dimension going in the y-axis direction of the construction plane:<br><br />
http://moi3d.com/forum/get_attachment.php?webtag=MOI&hash=c594a4d2c93cbc4b594fcc9482ab43ca&filename=DimVertical.png<br />
<br />
The DimAligned command creates a linear dimension going in any direction on the construction plane:<br><br />
http://moi3d.com/forum/get_attachment.php?webtag=MOI&hash=794f907b2a85dfc93ea5462f919680fa&filename=DimAligned.png<br />
<br />
All 3 of the linear dimension commands have a "From object" button in their command options which you can trigger to take the start and end point of a curve as the first 2 points of the dimension.<br />
<br />
The DimRadius command creates a radial dimension on a circle or arc curve:<br><br />
http://moi3d.com/forum/get_attachment.php?webtag=MOI&hash=3fe29174d3a44247c189f098635089bf&filename=DimRadius.png<br />
<br />
The DimAngle command creates an angular dimension on the construction plane. There is a "From lines" button in its command options which will allow you to select 2 line objects instead of picking points.<br><br />
http://moi3d.com/forum/get_attachment.php?webtag=MOI&hash=899daa66d11473a80215ced67ec3707f&filename=DimAngle.png<br />
<br />
The Leader command creates a leader object which is a text label with an arrow.<br><br />
http://moi3d.com/forum/get_attachment.php?webtag=MOI&hash=3e412e15007311c6f216db34d71e1907&filename=Leader.jpg<br />
<br />
The AnnotationText command creates an annotation text object which is a text box by itself, no arrows.<br />
<br />
Annotations are currently only saved to and from .3dm files. Saving them to DXF and PDF/AI files will be upcoming.<br />
<br />
There is an option in moi.ini for changing the display appearance of arrowheads in annotations by disabling mitered arrowhead tips:<br><br />
[Annotations]<br><br />
MiterArrowheads=y<br />
<br />
<br />
Other bug fixes and updates:<br />
<br />
Update FBX export - FBX version, object names, and materials. Add option for which FBX version to use under Options dialog &gt; Import/Export &gt; FBX options &gt; FBX version. Object names are now written to the FBX files instead of only generic "object1", "object2", ... names and styles are now written as materials in the FBX export. Writing materials can be disabled in moi.ini under [FBX Export] WriteMaterials=n<br />
<br />
Added SubD import option for open boundaries behavior under Options &gt; Import/Export &gt; SubD import options. Can be one of "Open boundaries: Keep corners" or "Open boundaries: Rounded". The default is "Keep corners" as per the discussion on the forum here:<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=9274.1<br><br />
It can be set to "Open boundaries: Rounded" to return to the previous beta's behavior at open boundary areas.<br />
<br />
Update DXF/PDF/AI hidden line layer controls. Add an optional prefix and/or suffix to be added to the style name when generating a 2D hidden line drawing to DXF/PDF/AI formats. Requested on the forum by miquik here:<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=9418.1<br />
<br />
Update view tabs - enable right click to get reverse views. Requested by Juraj in the forum here:<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=9473.10<br />
<br />
Add option in moi.ini for zooming using Shift+MMB:<br><br />
[View]<br><br />
ShiftMMBZoom=y<br />
<br />
Update file dialog filters. Make "All supported files" the first item in the file open filter list on both Windows and Mac (previously it was only on Mac). So that will be the default filter when the file dialog is first opened. This can be reverted to the previous behavior by a setting in moi.ini :<br><br />
[FileDialog]<br><br />
AllSupportedAtBottom=y<br><br />
Requested by agonyii in the discussion forum here:<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=9387.1<br />
<br />
Add moi.ini option for LWO export to not write styles as materials/surfaces in the LWO file.<br><br />
[LWO]<br><br />
WriteMaterialAssignments=y<br />
<br />
Fix bug with meshing dialog settings not being saved. Reported by stefan in the newsgroup here:<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=9266.51<br />
<br />
Fix Options dialog sub dialogs not displaying in full screen mode on macOS Mojave. Simplify dialog window z-ordering on Mac to avoid Mojave bug and hopefully be more resilient against any future Mac child window behavior changes. Reported by Martin in the forum here:<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=9443.1<br />
<br />
Fix improper mouse coordinate scaling on Mac w/Retina. Fix bug with longer distance delay before rotate/pan engages with V4 compared to V3, reported on the forum by Nis here:<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=9266.200<br />
<br />
Fix PDF export crash bug reported on the forum by Mip here:<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=9266.144<br />
<br />
Fix crash with some extended combination keystrokes such as Ctrl+Alt+Win+Numpad1 (QTBUG-36061). Fixes a crash bug reported through e-mail by Mark Tomlinson.<br />
<br />
Fixed a crash in display meshing with a file reported through e-mail by Bodo-Lutz.<br />
<br />
Fix crash in node editor revolve with small angle value, reported by Pilou in the forum here:<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=9476.119<br />
<br />
Updated HarmonyWare libs for STEP, SAT, and IGES file I/O from version 2.1.0 to 2.1.4, various bug fixes.<br />
<br />
Update STEP import/export - face colors. Support per-face colors for STEP file import and export. Fixes STEP import color bug reported on the forum by Fran6 here:<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=9339.4<br />
<br />
Fix 3DM import bug with incorrect circle orientation when reading 3DM files from CAD Exchanger. Fixes mangled import of mould.quadlobe.toy reported on the forum by LarryV here:<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=9266.164<br />
<br />
Update Construct &gt; Curve &gt; Isect "Curve from 2 views". Allow lines to be used as input for curve from 2 views, requested by Przemas in the forum here:<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=9440.1<br />
<br />
Update Trim - "stencil cut" options. Add options to Edit &gt; Trim for deleting the cutting objects and for having a joined together result with "keep all" instead of always separarting into pieces. Requested on the forum by Przemas here:<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=9436.1<br />
<br />
Fixed bug where left-click on style line of properties panel behaved the same as the right click shortcut for editing the style rather than putting up the style picker menu. Reported in the forum by Ralf here:<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=9266.22<br />
<br />
Update selection texture readback on Wine - test for Nvidia driver bug with red/blue bytes swapped and compensate. Also add calls to glFinish() on Wine to try and help avoid some other Nvidia driver bugs on Linux/Wine.<br />
<br />
Update command object model for properties undo. Add moi.command.addSelectedObjectsStateUndoUnit(); that can be called by a command that only modifies properties and doesn't add or delete objects, to get undo support.<br />
<br />
Add script properties to Face objects:<br><br />
face.domainMin : Property that returns u,v coordinate of the lower left of the surface's parameter range.<br><br />
face.domainMax : Property that returns u,v coordinate of the upper right of the surface's parameter range.<br><br />
face.evaluatePoint( uv, u_from_left, v_from_left ) : Function that evaluates a uv parameter value and returns a 3D point.<br><br />
face.evaluateNormal( uv ) : Function that evaluates a uv parameter value and returns a normal vector.<br><br />
face.evaluate1stDerivatives( uv, u_from_left, v_from_left ) : Function that evaluates a uv parameter value and returns first derivatives as a list containing [pt, du, dv, duv].<br><br />
face.evaluate2ndDerivatives( uv, u_from_left, v_from_left ) : Function that evaluates a uv parameter value and returns first and second derivatives as a list containing [pt, du, dv, duv, duu, dvv].<br><br />
face.isPlanar : Property that returns true if the surface is planar.<br><br />
face.planarFrame : Property that returns a coordinate from for a planar surface. Only valid if isPlanar returns true.<br><br />
face.isOnPlane( frame ) : Function that returns true if the surface is planar and is on the given coordinate frame's x/y plane.<br><br />
face.isOnParallelPlane( frame ) : Function that returns true if the surface is planar and is on a plane parallel to the given coordinate frame's x/y plane.<br><br />
<br />
<br />
== Jan-22-2020 ==<br />
<br />
[http://moi3d.com/forum/index.php?webtag=MOI&msg=9660.1 Forum announcement]<br />
<br />
New stuff:<br />
<br />
Added dimension property preset system for controlling initial properties of newly drawn dimensions.<br><br />
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 also create additional presets for project-specific settings.<br><br />
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.<br />
<br />
Implement sizing of the scene browser by dragging on its edge.<br />
<br />
Update dimensions arrowheads - Add option to position arrowheads to the outside, for linear dimension and angular dimension.<br />
<br />
Enable turning on edit points for annotations. This can be used to edit dimensions and also to reposition dimension text.<br><br />
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.<br />
<br />
Add circumference field. Add a circumference field in addition to radius/diameter for circle picking.<br><br />
Affects ArcTangent, Circle, CircleTangent, Cone, Cylinder, and Sphere commands. <br />
<br />
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.<br />
<br />
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.<br />
<br />
Add snap points on angular dimension objects<br />
<br />
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.<br />
<br />
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<br />
<br />
<br />
Fixed bug with dimension text getting distorted when coordinate values were larger than 2500.0<br />
<br />
Fix OBJ sub-d conversion crash when reading materials that had texture maps set up.<br><br />
Fixes a crash reported through e-mail by Phil Nolan.<br />
<br />
Fix sweep bug. History update with editing control points for Sweep was making unexpected results.<br><br />
Fixes bug reported in the forum by nameless here: http://moi3d.com/forum/index.php?webtag=MOI&msg=9526.196<br />
<br />
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.<br />
<br />
Fix bug with circle Tan Tan Radius reported through e-mail by Vladimir.<br />
<br />
Fix annotation window select bug - Leaders without any text were not working with window selection.<br />
<br />
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<br><br />
Fixes a bug reported in the forum by Axel here: http://moi3d.com/forum/index.php?webtag=MOI&msg=9615.1<br />
<br />
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.<br />
<br />
Update edge hit testing - Fix dead zone around outside of object with selection filters active. Fixes bug reported on the forum by Pior here:<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=8435.42<br />
<br />
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.<br />
<br />
Fixed annotation font picking bug that would cause the font size to grow to larger values on Mac just by opening the font dialog.<br />
<br />
Update detailed properties dialog styles. When multiple styles selected, list the styles.<br />
<br />
Fix annotation objects bounding box bug which caused Transform > Align to behave strangely with annotation objects. Reported by OSTexo on the forum here:<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=9526.11<br />
<br />
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:<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=9526.85<br />
<br />
Fix bug with Display: Wireframe mode on Meshing options dialog box not working. Reported on the forum by Schbeurd here:<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=9526.148<br />
<br />
Fix curve offset bug - Curve offset through point wasn't working correctly if closest point was at a tangent discontinuity.<br />
<br />
Show error dialog if trying to load a Rhino v6 or higher .3dm file.<br />
<br />
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:<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=9526.76<br />
<br />
Fixed bug where esc key could prevent hit testing from being reset on curve used for DimRadius. Reported through e-mail by Vladimir<br />
<br />
Update mesh dialog - Don't restore window corner position saved in moi.ini if the corner is not on a visible screen.<br />
<br />
Revert IGES import change - only use simple joins, not any vertex/edge splitting. Fixes regression reported on the forum by Will here:<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=9526.220<br />
<br />
Add moi.ini setting for showing grid in ortho views only, not the 3D view.<br><br />
[Grid]<br><br />
ShowGridInOrthoViewsOnly=y<br><br />
<br />
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 .<br><br />
Requested by Lestatdelc in the forum here:<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=9526.72<br />
<br />
Add moi.ini setting to disable selection edge flashing.<br><br />
[Selection]<br><br />
DisableSelectionEdgeFlash=n<br><br />
If set to =y then the edge flash feedback when selecting faces or breps will be disabled. Requested by Pior in the forum here:<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=8435.36<br />
<br />
Add moi.ini options for disabling preselection highlighting. In moi.ini under:<br><br />
[Selection]<br><br />
DisablePreselectionHighlighting=n<br><br />
DisablePreselectionHighlightingExceptCurves=n<br><br />
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:<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=8435.28<br />
<br />
Add moi.ini option to export FBX names as ascii [FBX Export] ConvertObjectNamesToAscii=y . Requested on the forum by Sven here:<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=9526.115<br />
<br />
<br />
scripting:<br />
<br />
Update view.setCameraAndTarget() function. Take an optional 3rd parameter of an "up" direction vector.<br />
<br />
Add script methods for dropping points:<br><br />
&nbsp;&nbsp;curve.dropPoint( pt ) - returns curve parameter value of closest point on the curve to the given 3D point.<br><br />
&nbsp;&nbsp;curvesegment.dropPoint( pt ) - returns curve parameter value of closest point on the curve segment to the given 3D point.<br><br />
&nbsp;&nbsp;face.dropPoint( pt ); - returns 2D uv coordinate point of closest point on the face to the given 3D point.<br><br />
&nbsp;&nbsp;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.<br><br />
<br />
Updated face.planarFrame() method for analytic planes to use the same x/y axis alignment that point picking snap plane uses.<br />
<br />
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.<br />
<br />
Add getEdgeIsoType script method<br><br />
Takes a parameter of which face to consider, an edge can be shared between 2 faces.<br><br />
var Iso = EdgeCrv.getEdgeIsoType( Face );<br><br />
Return value:<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;-1 : Edge is not an isocurve of the given face.<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;0 : Edge is an isocurve of the given face, going in the U direction.<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;1 : Edge is an isocurve of the given face, going in the V direction.<br />
<br />
<br />
== Sep-10-2020 ==<br />
<br />
[http://moi3d.com/forum/index.php?webtag=MOI&msg=9942.1 Forum announcement]<br />
<br />
Still not quite finished but really close! Exporting dimensions to PDF/AI formats is still in progress and almost there but I needed to release this new beta now because the current beta expires tomorrow. It has been quite a while since the last beta, please let me know if you see any new bugs surface in this release. It won't be much longer before v4 will be wrapped up.<br />
<br />
New stuff:<br />
<br />
Updated DXF - support import/export of dimension entities.<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;Import of TEXT, MTEXT, LEADER, and DIMENSION (linear, angular, radius/diameter sub types) is now supported. MoI will export dimensions to MTEXT, LEADER, and DIMENSION enties.<br />
<br />
Update annotations, add model units scaling behavior.<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;There is a new option for annotation behavior under Details > Annotation properties > "Scaling:" which has options for "Scaling: By screen size" or "Scaling: By model units".<br />
<br />
&nbsp;&nbsp;&nbsp;&nbsp;Scaling: "By screen size" works the same as the earlier v4 betas where text and arrowheads stay the same size on screen independent from the current zoom level.<br />
<br />
&nbsp;&nbsp;&nbsp;&nbsp;Scaling: "By model units" is a new option that makes the text and arrowheads to behave the same as geometry, where it is fixed at a certain unit size (given by the Height: field just after it) and will display larger or smaller when you zoom in and out. This option gives better compatibility with other CAD programs since almost all other programs work this way. When you import dimensions from DXF or from a 3DM file created in Rhino they will default to using this method so that things like title blocks where there are lines or other geometry making a table with text inside it will work as expected.<br />
<br />
Finished the AnnotationText and Leader command dialogs.<br />
<br />
Updated show points for dimension leader. Allow delete of selected edit points for leader objects.<br />
<br />
Handle file write errors - an error dialog will show now on file write failures like if the system ran out of disk space or permission denied.<br />
<br />
3DConnexion updates:<br><br />
&nbsp;&nbsp;&nbsp;&nbsp; - Updated 3dx default speed on Windows. On Windows 3dx translation and rotation speed was too fast, implement same default speed as Mac.<br><br />
&nbsp;&nbsp;&nbsp;&nbsp; - Add "Reverse roll" setting in Options dialog under Options > View > Rotate/Pan/Zoom options > 3DConnexion options. Requested by Fred in the forum here:<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;http://moi3d.com/forum/index.php?webtag=MOI&msg=9660.30<br><br />
&nbsp;&nbsp;&nbsp;&nbsp; - Also added individual settings for reversing twist or tilt in moi.ini, under:<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;[3Dconnexion]<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;&lt;...&gt;<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;ReverseTwist=y<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;ReverseTilt=y<br />
<br />
Update SaveAs to STEP/IGES/SAT formats for hidden objects.<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;By default don't write hidden objects to STEP/IGES/SAT formats when doing a SaveAs, unless turned on in moi.ini under:<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;[NURBS Export]<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;WriteBlankedObjects=y<br><br />
<br />
&nbsp;&nbsp;&nbsp;&nbsp;Also fixed regression in v4 where the blanked flag for hidden objects was not being set on IGES and SAT export.<br />
<br />
Update History<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;Enable face extrudes and the Rebuild command to trigger history updates.<br />
<br />
Curve offset overhaul - Improve curve offset robustness:<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;1 - when extending a line make a new analytic line as the result and use an analytic line/line intersection when possible for more accuracy.<br><br />
<br />
&nbsp;&nbsp;&nbsp;&nbsp;2 - Update how convex corner processing is done to avoid getting little loops which could confuse trim classification and were not getting trimmed out with shallow angle polylines as reported on the forum by Yanik here:<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;http://moi3d.com/forum/index.php?webtag=MOI&msg=9660.47<br />
<br />
&nbsp;&nbsp;&nbsp;&nbsp;3 - Do a better job of selecting intersections and screening out wild results from G2 reflection type extension. Should eliminate crazy looping extensions.<br />
<br />
Update grid axis display colors<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;Add in Z axis color option under Options > Grid. Grid axis lines are now colored according to their 3D orientation, so for example if you set the Z axis color to blue, then the vertical axis line in the front view will be colored blue. Previously the grid axis lines were colored the same in all viewports. You can re-enable that previous way by a setting in moi.ini :<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;[Grid]<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;<...><br><br />
&nbsp;&nbsp;&nbsp;&nbsp;UseOldStyleGridAxisColors=y<br />
<br />
&nbsp;&nbsp;&nbsp;&nbsp;Also added in an option for displaying the z axis grid line in the 3D view, under Options > Grid > "Show grid z axis in 3D view" checkbox.<br />
<br />
Update IGES export<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;Add an option under Options > Import/Export > IGES options > "Write solids as" for writing out solids as either an IGES type 186 "Manifold Solid B-Rep" entity or whether to write them as individual separate surfaces as MoI v3 and earlier always did.<br />
<br />
Update Draw solid > Text command - font styles<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;Add a Style: option to the Draw solid > Text command to make it possible to access styles of the font other than bold/italic. Requested on the forum by Javier here:<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;http://moi3d.com/forum/index.php?webtag=MOI&msg=8766.1<br />
<br />
Update error message when command not found.<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;Pop up a "command not found" dialog instead of a script exception dialog if trying to exec a command that was not found in any command folder.<br />
<br />
Update Help > About dialog<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;Add links for showing license keys and EULA from Help > About dialog. The license key dialog also has an option to clear out license keys.<br />
<br />
Detailed object properties dialog<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;Implement undo for annotation property changes in detailed object properties dialog.<br />
<br />
Update detailed properties panel types report<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;Add reports for all curves, all edges, and all brep edges if there is a mix of different types so there is one label that can be targeted for grabbing all edges or all curves instead of needing to shift+click on both "Open curves" and "Closed curves" for example.<br />
<br />
Add scale factor option for SubD import, in moi.ini<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;[SubD Import]<br />
&nbsp;&nbsp;&nbsp;&nbsp;ScaleFactor=1.0<br />
&nbsp;&nbsp;&nbsp;&nbsp;requested by Tudor in the forum here:<br />
&nbsp;&nbsp;&nbsp;&nbsp;http://moi3d.com/forum/index.php?webtag=MOI&msg=8665.109<br />
<br />
Update annotations bounding size<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;Don't include annotations in the bounding size for the edit frame or the properties panel, unless only annotations are selected.<br />
<br />
&nbsp;&nbsp;&nbsp;&nbsp;There is a moi.ini option to include annotations always in these sizes:<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;[Annotations] IncludeAnnotationsInBoundingBox=y<br><br />
&nbsp;&nbsp;&nbsp;&nbsp; <br />
&nbsp;&nbsp;&nbsp;&nbsp;Discussed in the forum here:<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;http://moi3d.com/forum/index.php?webtag=MOI&msg=9526.30<br />
&nbsp;&nbsp;&nbsp;&nbsp;<br />
Update persistence of "Mesh angle" option.<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;On startup, clamp the value for Options > View > Meshing parameters > Mesh angle to be between 10 and 45 degrees. It can be set lower by a startup script.<br />
<br />
Update annotation text display - substitution fonts<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;Enable use of substitution fonts in annotation text rendering. This will automatically switch to a fallback font if the current font does not have glyphs for unicode text characters being displayed.<br />
<br />
Update sub-d import<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;Use mesh object name in sub-d obj file conversion, and merge styles with the same names and colors. Requested in the forum by pafurijaz here:<br />
&nbsp;&nbsp;&nbsp;&nbsp;http://moi3d.com/forum/index.php?webtag=MOI&msg=9660.142<br />
<br />
Update edit styles dialog.<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;Show gray text on styles with nothing assigned to them same as the scene browser. Requested by pafurijaz in the forum here:<br />
&nbsp;&nbsp;&nbsp;&nbsp;http://moi3d.com/forum/index.php?webtag=MOI&msg=9660.148<br />
<br />
Update object dragging<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;Option for disabling object dragging so clicking on objects will only do selections and not any drags.Set under moi.ini under:<br />
&nbsp;&nbsp;&nbsp;&nbsp;[Selection]<br />
&nbsp;&nbsp;&nbsp;&nbsp;<...>'<br />
&nbsp;&nbsp;&nbsp;&nbsp;DisableObjectDrag=y<br />
<br />
<br />
<br />
Bug fixes:<br />
<br />
Fix window un-maximize bug on Windows - Fixed bug where the restored window position used for un-maximizing a window would keep growing larger on every run.<br />
<br />
Updated selection with filters on - if a selection filter is active, when clicking on an edge or face object to select it do the selection update immediately on the mouse press instead of mouse release. Fixes a bug reported by pior in the forum here:<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=9660.24<br />
<br />
Updated hit testing. Fixed bug where edge boost for selected breps was happening even for objects with selection lock on them. So in the case of boolean difference, the base object was having its edges boosted over top of any standalone curves in the same spot, preventing them from being selected. Fixes a bug reported through e-mail by Vladimir.<br />
<br />
Fixed annotation text bugs with text anchor property. The text anchor property was not persisting properly for all values.<br />
<br />
Fixed a bug with importing a DEGENERATE_TOROIDAL_SURFACE surface type through STEP format.<br />
<br />
Fixed a chamfer/fillet bug with skinny surfaces. If a chamfer surface was skinny (less than 10*tolerance across) it was possible for the chamfer surfaces to get connected improperly since it took just the first one within tolerance instead of the closest one.<br />
<br />
Fixed a bug with keyboard shortcut handling on Mac with a Japanese keyboard. Reported on the forum by nemuneko here:<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=9660.39<br />
<br />
Fixed shortcut key bug where capslock key was being interpreted as the letter "A" key.<br><br />
Reported on the forum by nemuneko here: http://moi3d.com/forum/index.php?webtag=MOI&msg=9660.39<br />
<br />
Fixed bugs with dialog size and positioning.<br><br />
Previously when showing a resizable dialog, if there was a saved size from a previous use it would restore that same size. The bug from that was if the dialog size was done on a high resolution monitor and now the use has switched to a different screen the saved dialog size could exceed the current screen resolution. Fixed by limiting saved dialog width and height by current screen size. Also if a saved position for a dialog will be used, check if it is visible on screen before using it. Additionally, don't allow resizable dialogs to shrink to down 0 width or height. Fixes bugs reported through e-mail by James.<br />
<br />
Fixed sweep bug - Freeform sweep framing had a bug when rail segments were anti-tangent. Fixes a bug reported through e-mail by Pilou.<br />
<br />
Updated dimension text rendering - Y positioning for glyphs used incorrect rounding. Was causing noticeable mis-positioned glyphs when using Gill Sans 18 pt font on Mac. Fixes a text display bug reported through e-mail by James.<br />
<br />
Variable radius filleting - linear blend fix. Fixed a bug in variable radius filleting with "linear blend" option where fillet surfaces were not being extended properly. Fixes a bug reported on the forum by Dan R here:<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=9753.1<br />
<br />
Fixed arrowhead bug - outside dimension arrowhead lines not placed correctly on larger scaled objects. Fixes a bug reported through e-mail by James.<br />
<br />
Fixed dimension feet & inches display - for feet&inches, check if the font does not support any Unicode fraction characters being used and if not replace with long form text like 1/2.<br />
<br />
Fixed STEP/IGES import of composite curve entities with G0 discontinuities. Look for G0 discontinuities in imported curves and break those out to separate curves.<br />
<br />
Fix file dialog bug - Fix bug where file open dialog called by script was not returning empty string when canceled. Fixes node editor bug reported in the forum by Wayne here:<br><br />
http://moi3d.com/forum/messages.php?webtag=MOI&msg=7713.880<br />
<br />
Fix Extrude bug with end caps disabled - When making a curve extrude with end caps disabled, a brep with disjoint shells would be created if there were any interior holes in the extrusion.<br />
<br />
Update sweep - true up rail segment ends. If segment end tangents are within 2 degrees of tangent, true them up to be exactly tangent if possible. This can improve corner mitering fails with segments that are nearly G1 but not quite. Fixes bug reported through e-mail by Salvatore.<br />
<br />
Fix curve fillet bugs -<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;Fix curve filleting bug reported by Cemortan_Tudor in the forum here:<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;http://moi3d.com/forum/index.php?webtag=MOI&msg=8665.97<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;and also another curve filleting bug reported a long time ago in the forum by macray here:<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=4958.1<br />
<br />
Fix select last created not working with drag/copy. Reported by Tudor in the forum here:<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=8665.115<br />
<br />
Fix bug in orient line / line<br><br />
Fix bug when line directions pointing opposite each other. Fixes a bug reported in the forum by Karsten here:<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=9476.422<br />
<br />
Fix file dialog crash on Mac Catalina OS<br><br />
Implement fix for QTBUG-83342 for an OS bug that could cause the file dialog to crash on Mac Catalina OS.<br />
<br />
<br />
Scripting updates:<br />
<br />
Added Curve.getIsTangentEdge( AngleToleranceDegrees /* optional, default = 2 degrees */ );<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;- returns true if the 2 surfaces on either side of the edge are tangent to each other.<br />
<br />
Added CurveSegment.getIsG1ToAdjacentSegment( 0 /* 0 for start, 1 for end */ );<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;- returns true if the next segment at the start or end is smooth to the current curve segment.<br />
<br />
moi.filesystem.shellExecute(), added wait for finished parameter.<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;moi.filesystem.shellExecute( path, params, wait ) now takes an optional 3rd boolean parameter for whether to wait until the called process has exited before returning. When used, the return value from shellExecute() is an object containing an .exitCode property for the integer exit code of the called process and an .output string parameter for any text written by the called process to stdout.<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;Example:<br />
&nbsp;&nbsp;&nbsp;&nbsp;var res = moi.filesystem.shellExecute( 'cmd /c dir c:\\', '', true );<br />
&nbsp;&nbsp;&nbsp;&nbsp;if ( res.output ) moi.ui.alert( res.output );<br />
<br />
Updated geometryDatabase::addObject()<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;Ignore the add if the given object is already in the geometry database. Fixes node editor bug reported by Brian here:<br />
&nbsp;&nbsp;&nbsp;&nbsp;http://moi3d.com/forum/index.php?webtag=MOI&msg=7777.1668<br />
<br />
Add face.isNew and curve.isNewEdge properties.<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;These will be set to true if the face or edge was newly generated instead of coming from a copy or split off piece of an original one.<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;example:<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;script: /* Select new edges at intersections after a boolean command */ moi.geometryDatabase.deselectAll();<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;var breps = moi.geometryDatabase.getLastCreated().getBReps(); for ( var i = 0; i < breps.length; ++i )<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;{ var edges = breps.item(i).getEdges(); for ( var j = 0; j < edges.length; ++j ) { var e = edges.item(j);<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;if ( e.isNewEdge ) e.selected = true; } }<br><br />
<br />
Add moi.geometryDatabase.getLastCreated(); - get an object list of the objects that were created by the last run command.<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;Example:<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;script: /* Select fillet surfaces */ moi.geometryDatabase.deselectAll(); var breps = moi.geometryDatabase.getLastCreated().getBReps();<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;for ( var i = 0; i < breps.length; ++i ) { var faces = breps.item(i).getFaces(); for ( var j = 0; j < faces.length; ++j )<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;{ var f = faces.item(j); if ( f.isNew ) f.selected = true; } }<br><br />
<br />
Update MoiList and ObjectList - Add list.clear() and objectlist.clear() methods which will empty out the list so it has length=0.<br />
<br />
Add curve.changeClosedCurveSeam( new_start_parameter, rebuild_circles /*optional, default = true */ );<br />
<br />
Update scripting - window moving and sizing methods.<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;Add window positioning methods:<br />
<br />
&nbsp;&nbsp;&nbsp;&nbsp;win.move( x, y ); - move the window to the given x,y screen coordinates. Can be given either one argument of an object with x,y properties, or 2 numeric arguments.<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;win.resize( width, height ) - resize the client area of a window to the given width and height. Can be given either one argument with x,y or width,height properties, or 2 numeric arguments.<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;win.getPosition() - returns an object with .x and .y properties for the window's screen coordinates.<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;win.getSize() - returns an object with .width and .height properties for the window's client area width and height.<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;win.getFrameSize() - returns an object with .width and .height properties for the window frame's width and height.<br />
<br />
&nbsp;&nbsp;&nbsp;&nbsp;Also added moi.ui.getScreenRect( element ) which will give the screen coordinates of the given element or UIPanel. Returns an object with .left, .top, .right, .bottom, .width, and .height properties.<br />
<br />
&nbsp;&nbsp;&nbsp;&nbsp;Example - increase the Options dialog width by 10 pixels:<br />
<br />
&nbsp;&nbsp;&nbsp;&nbsp;var uipanel = moi.ui.getUIPanel( 'moi://ui/options.htm' );<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;if ( uipanel )<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;{<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;var dlg = uipanel.moiWindow;<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;var pos = dlg.getSize(); pos.width += 10; dlg.resize( pos );<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;}<br />
<br />
&nbsp;&nbsp;&nbsp;&nbsp;Example - position the Options dialog to the right of the side pane:<br />
<br />
&nbsp;&nbsp;&nbsp;&nbsp;var options = moi.ui.getUIPanel( 'moi://ui/options.htm' );<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;if ( options )<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;{<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;var rc = moi.ui.getScreenRect(moi.ui.sidePane);<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;options.moiWindow.move(rc.right,rc.top);<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;}<br />
<br />
Update view tabs customization<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;Call a function UpdateViewTab( TabButton ) in the UI when a view tab has been reversed, so that it is possible to implement custom UI like having images there instead of text. Requested on the forum by Tim Whiteman here:<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=9821.1<br />
<br />
<br />
Update Esc script cancelling<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;Use different method to determine time since last wait for event. The previous method of watching calls to WaitableObject::waitForEvent() is not good because there are other kinds of event loops that do not go through WaitableObject, like modal dialogs or combo box dropdowns. The new method should handle all types of event loops.<br />
<br />
Update offset factory - Enable a new property factory.curveOffsetDistance to return the distance used by offset in through point mode.<br />
<br />
Update pointpicker, add .recalc() method Requested on the forum by Tudor here:<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=8665.221<br />
<br />
<br />
== Oct-27-2020 ==<br />
<br />
[http://moi3d.com/forum/index.php?webtag=MOI&msg=10011.1 Forum announcement]<br />
<br />
This should be the last v4 beta unless any new bugs pop up. The only remaining area for finishing v4 is to update the documentation.<br />
<br />
New stuff:<br />
<br />
Implemented dimension output to PDF/AI formats.<br />
<br />
Loosen cplane projection behavior for dimensions. Projection to the cplane is now a checkbox option inside the dim commands. When turned off you can now do things like pick the first point in the 3D view and then the next point in an ortho view instead of all points being projected to the cplane of the first pick (which can still be enabled by the Project to cplane checkbox option). You can also now create a linear dimension going in the z-axis direction in the 3D view.<br />
<br />
Lightweight conics for PDF/AI export - Use specialized fitter for circles, arcs, ellipses and elliptical arcs to make a lighter weight control point structure. Can be disabled by a setting in moi.ini, add in an entry under [AI/PDF Export] :<br><br />
[AI/PDF Export] UseLightweightConics=n<br />
<br />
Update dimension grid snap. Fix bug where grid snap was snapping to a displaced grid if the initial picked point was not on a grid point. Fixes bug reported in the forum by Larry here:<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=9942.117<br />
<br />
64-bit 3DM file output - switch to Rhino v5 3DM output by default and fixed a bug to allow 3DM files sizes greater than 2GB. Also added a moi.ini option to control the default 3DM version:<br><br />
[3DM] Version= Can be set to Version=4 to make Rhino v4 3DM output which was what MoI v3 used.<br />
<br />
Update FBX default version. Update default FBX file version to 2013/7.3/7300 since Blender does not support 2010/6.1/6100 .<br />
<br />
PDF/AI export - Fix bug with "Preserve units" + "Center on page" option. Fixes a bug reported on the forum by David here:<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=9942.46<br />
<br />
Update DXF spline import - handle DXF output from CorelDRAW with duplicated points. Fixes DXF import problems reported on the forum here:<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=9946.1<br />
<br />
Fixed an infinite loop bug in Qt when showing popup windows in a certain order.<br />
<br />
Update curve control point editing - maintain analytic curves. When doing control point editing on multi segment curves, maintain analytic curve types for segments that are not affected by the current control point selection.<br />
<br />
Updated Esc key handling. If there is a waitable object that has called allowNestedCancel(), don't make Esc cancel the entire command. This should give equivalent behavior for command flow whether clicking on tthe "Cancel" button or using Esc. Fixes a problem reported in the forum by Larry here:<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=9918.1<br />
<br />
Update color picker dialog - fix dialog size shifting when using "Pick Screen Color" button.<br><br />
Fixes a bug reported by Wayne on the forum here:<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=9942.102<br />
<br />
Updated SubD import library with fixes for a couple of remaining crash cases when processing malformed mesh topology.<br />
<br />
Update IGES/STEP output - option for not generating output as an assembly structure. Can be set in moi.ini for IGES or STEP output under:<br><br />
[IGES] ExportFlattenAssemblies=y<br><br />
[STEP] ExportFlattenAssemblies=y<br><br />
Set to =y to generate output without assembly structures same as V3. Should fix problem with exporting to Condacam reported by Joerg in the forum here:<br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=9942.105<br><br />
<br />
Scroll bar bug fix - Update Qt webkit to fix bug when dragging scroll bar and releasing mouse outside window resetting scroll position to top. Fixes a bug reported by Frederick on the forum here:<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=9995.1<br><br />
<br />
Fix edge selection bug after boolean union in areas where planes were merged together. Fixes a bug reported in e-mail by Pilou.<br />
<br />
Update IncrementalSave - Maintain leading 0 padding in current filename, so File_0020.3dm for example will make File_0021.3dm instead of just File_21.3dm as it previously did.<br />
<br />
Add Align option to Draw solid > Text command. Requested by Stefano in the forum here:<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=9942.99<br />
<br />
Add option for showing annotations in a specific color instead of by style color. In moi.ini under the [View] section:<br><br />
AnnotationColorMode=ByStyle<br><br />
AnnotationFixedColor=0,0,0<br><br />
The color mode can be either ByStyle or FixedColor. If set to AnnotationColorMode=FixedColor then they will show using the color from AnnotationFixedColor=R,G,B (each with a value from 0 to 255).<br><br />
Requested by Stefano in the forum here:<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=9950.1<br><br />
<br />
Add Value: property to Details... properties dialog for dimensions for copying value to the clipboard. Requested by Mindset in the forum here:<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=6925.570<br />
<br />
Add option in moi.ini for not limiting Options > View > Meshing parameters > "Mesh angle" value:<br><br />
[View]<br><br />
NoMeshAngleLimit=y<br><br />
<br />
<br />
Scripting:<br />
<br />
Add moi.ui.getLastOrientationPickerFrame() - returns the coordinate frame that was picked with the last OrientationPicker.<br />
<br />
Update startup scripts - call startup scripts after first UI panel layout has been completed so things like the side pane tabs can be manipulated by the script.<br />
<br />
<br />
== Dec-21-2020 ==<br />
<br />
[http://moi3d.com/forum/index.php?webtag=MOI&msg=10075.1 Forum announcement]<br />
<br />
I'm just about ready for the final v4 release. There were a few bugs fixed since the previous v4 beta and the v4 final release, and so I'm publishing this final v4 beta with those last fixes included.<br />
<br />
New stuff:<br />
<br />
Documentation has been updated for v4.<br />
<br />
Update angular dimension extension lines. Only draw extension lines for angular dimensions from the arc to the picked points, not from arc all the way to the center. Fixes angular dimension issues reported in the forum by Mik here:<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=10011.36<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=10011.50<br />
<br />
Update DimRadius command. Fix problem with placing first dimension point further away than the arc's center point. Fixes bug reported by WN on the forum here:<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=10011.47<br />
<br />
Update Inset command - Allow thickness of 0 in Inset command for some additional effects. Discussed in the forum here:<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=10029.2<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=10029.20<br />
<br />
<br />
Bug fixes:<br />
<br />
Fixed regression with named object selection by typing in object names in the XYZ input control. This was broken a couple builds back with a new "Command not found" error message showing if the input did not match any command names.<br />
<br />
Fixed regression in numeric input field handling. Match behavior of v3 when erasing all text in an input field, set a value of 0 in this case. Fixes regression reported by PaQ in the forum here:<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=10011.150<br />
<br />
Update static objects rendering - check for 32-bit index buffer support before trying to use it.<br />
<br />
Update Chamfer - make analytic plane for chamfer surface when possible, fixes Inset failing on a newly generated chamfer which would succeed when saved to 3dm and reloaded. Reported on the forum here:<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=10051.1<br />
<br />
Update Mac font fallbacks. Fix Qt problem where DefaultFontFallbacks.plist file is not present on Catalina OS anymore.<br />
<br />
Update BGFX error handling - Put up a message box if BGFX returns a fatal error and guard against using it if it was not initialized, rather than crashing.<br />
<br />
Update Undo settings - fix shutdown bug where undo settings were not being written to moi.ini on app shutdown.<br />
<br />
Update SKP and FBX export - fix bug where SKP/FBX export didn't work right with some filenames with extended characters.<br />
<br />
<br />
Scripting:<br />
<br />
Update PointPicker script properties so a script can tell if there is a straight snap currently active.<br><br />
Added pointpicker.hasBasePt , pointpicker.hasStraightSnap , pointpicker.straightSnapDir read only properties.<br><br />
This makes it possible to do a "direction lock" shortcut key:<br><br />
var pp = moi.ui.getActivePointPicker(); if ( pp && pp.hasStraightSnap ) { pp.restrictToLinePtDir( pp.basePt, pp.straightSnapDir, true ); }<br />
<br />
<br />
== Dec-22-2020 ==<br />
<br />
V4 release version.</div>Michael Gibsonhttp://moi3d.com/wiki/index.php?title=Resources&diff=1007Resources2021-03-21T09:43:24Z<p>Michael Gibson: /* Tutorials */</p>
<hr />
<div>__NOTOC__<br />
===Links to useful MoI information on the web &nbsp;&nbsp;&nbsp;([[File:fr_flag.png]] [[Resources_%28french%29|French]])===<br />
<br />
<br />
{| style=" width: 80%; border-spacing: 10px; border: 0px; text-align: left; margin-left: auto; margin-right: auto;vertical-align:top;"<br />
|+ <br />
| <b>MOI's site links</b> || <b>External links</b><br />
|- style="vertical-align:top;"<br />
| <br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://moi3d.com MoI home page]<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://moi3d.com/forum MoI discussion forum] <br />
<br />
[[File:Img_wiki_homepage.png|25px]] [[FAQ|Frequently Asked Questions]] <br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://moi3d.com/4.0/docs/moi_help.htm MoI help file online] <br />
([[File:fr_flag.png]][http://moi3d.com/4.0/docs/moi_help_French.htm French]) ([[File:de_flag.png]] [http://moi3d.com/2.0/docs/moi_help_German.htm German]) ([[File:es_flag.png]] [http://moi3d.com/2.0/docs/moi_help_Spanish.htm Spanish]) ([[File:it_flag.png]] [http://moi3d.com/1.0/docs/moi_help_Italian.htm Italian])<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [[Shortcut Keys]]<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [[Hidden Secrets]]<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [[Scripting]] <br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://moi3d.com/forum/index.php?webtag=MOI&msg=7841.6 Burr's script archive - collection of scripts posted on the forum]<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [[V4Beta|V4 Beta release notes]]<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [[Nodeeditor|Node editor plugin]]<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://moi3d.com/4.0/EULA_retail.rtf MoI End User License Agreement]<br />
<br />
| <br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://kyticka.webzdarma.cz/3d/moi/ Petr's MoI page], a variety of informations including scripts and custom commands. ([[File:fr_flag.png]][http://moiscript.weebly.com/ French version])<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://moi.maxsm.net/ Max Smirnov's MoI scripts], numerous advanced scripts from Max.<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://moi.maxsm.net/media/files/ Max's file archive ]([[File:fr_flag.png]][http://moiscript.weebly.com/ French version])<br />
<br />
|}<br />
<br />
{| style=" width: 80%; border-spacing: 10px; border: 0px; text-align: left; margin-left: auto; margin-right: auto;vertical-align:top;"<br />
|+ <br />
| <b>Language packs:</b><br />
|- style="vertical-align:top;"<br />
|[[File:fr_flag.png]] [http://moi3d.com/4.0/docs/moi_help_French.zip French v4 update]<br />
<br />
[[File:es_flag.png]] [http://moi3d.com/2.0/docs/v2_Spanish_update.zip Spanish v2 update]&nbsp;&nbsp;<br />
<br />
[[File:it_flag.png]] [http://moi3d.com/1.0/docs/Italian_language_pack.zip Italian UI and help file]&nbsp;&nbsp;<br />
|<br />
[[File:fr_flag.png]] [http://moi3d.com/2.0/docs/french_command_reference_update.zip French v2 update]&nbsp;&nbsp;<br />
<br />
[[File:de_flag.png]] [http://moi3d.com/2.0/docs/v2_German_update.zip German v2 update]&nbsp;&nbsp;<br />
|}<br />
<br />
== Tutorials ==<br />
{| style=" width: 80%; border-spacing: 10px; border: 0px; text-align: left; margin-left: auto; margin-right: auto;vertical-align:top;"<br />
|+ <br />
| <br />
|- style="vertical-align:top;"<br />
|<br />
[[File:Img_wiki_homepage.png|25px]] [http://moi3d.com/3.0/docs/tutorials.htm MoI documentation video tutorials]<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [https://gumroad.com/l/vavRq MoI Basics video tutorial ]by Bojan Koturanović - 7 hours $25 on Gumroad<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [https://www.youtube.com/playlist?list=PLu-75I3Zd8NS0AH3O75nOuerVz9O1rTUI Tutorials on YouTube ]by Liminal4D<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://moi3d.com/forum/index.php?webtag=MOI&msg=9816.1 48 German language video tutorials ] [[File:de_flag.png]] by Stefan Schneller on jewelry design<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://moi3d.com/download/Moi3d-Overview.pdf Introduction and overview PDF ]by Fabien Franzen<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://moi3d.com/forum/index.php?webtag=MOI&msg=7389.1 Sub-d car modeling in MoI ]by Ed Ferguson<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://moi3d.com/forum/index.php?webtag=MOI&msg=9899.1 Custom truck tutorial ]by Ed Ferguson<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://www.k4icy.com/tutorials.html Tutorials] by Mike Maynard, ( [[File:fr_flag.png]] [http://moiscript.weebly.com/ 18 of them in French ] by Pilou)<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://moi3d.com/forum/index.php?webtag=MOI&msg=284.1 Ring tutorial] by Jesse Kaufman, and [http://moi3d.com/forum/index.php?webtag=MOI&msg=510.5 #2], [http://moi3d.com/forum/index.php?webtag=MOI&msg=623.1 #3], <br />
[http://moi3d.com/forum/index.php?webtag=MOI&msg=556.1 #4],<br />
[http://moi3d.com/forum/index.php?webtag=MOI&msg=538.6 #5],<br />
[http://moi3d.com/forum/index.php?webtag=MOI&msg=536.1 #6]<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://moi3d.com/forum/index.php?webtag=MOI&msg=1175.3 Simple ring using rail revolve], <br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://moi3d.com/forum/index.php?webtag=MOI&msg=1175.5 Simple ring using sweep + scaling rail for more control]<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://moi3d.com/forum/index.php?webtag=MOI&msg=1057.1 Product design forums modeling challenges] <br />
<small>(not specific to MoI but useful for general CAD modeling strategy).</small><br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://moi3d.com/forum/index.php?webtag=MOI&msg=606.4 Simple Intarsia type design]<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://moi3d.com/forum/index.php?webtag=MOI&msg=1171.2 Creating a 3-toed base foot]<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://vimeo.com/30168354 Flow workflow video ]from danperk<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://3dcncguitars.com/ Tutorials for guitar modeling in MoI and Rhino and CNC production]<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://moi3d.com/forum/index.php?webtag=MOI&msg=8845.16 Car modeling techniques] by Zarkow, and [http://moi3d.com/forum/index.php?webtag=MOI&msg=8845.5 #2] and [http://moi3d.com/forum/index.php?webtag=MOI&msg=9956.1 video tutorials]<br />
<br />
<br />
<br />
|<br />
[[File:Img_wiki_homepage.png|25px]] [https://gumroad.com/l/fGqqS MoI for Game Assets video tutorial] by Arrimus 3D - 5 hours $9.99 on Gumroad<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://moiusers.blogspot.com/ Introductory videos ]by Tom Meeks - videos with narration covering a lot of basics.<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://moi3d.com/forum/index.php?webtag=MOI&msg=6058.1 Videos from Andrei Samardac]<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://moi3d.com/forum/index.php?webtag=MOI&msg=3842.1 Video on modeling a SpacePilot controller] from lyes <br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://vimeo.com/channels/moi3d Vimeo channel with tutorials] from lyes<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://bitreality.blogspot.com/ Joe's classical column video tutorials]<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://moi3d.com/forum/index.php?webtag=MOI&msg=402.9 Japanese bathtub tutorial]<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://moi3d.com/forum/index.php?webtag=MOI&msg=446.17 Object repair tutorial]<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://moi3d.com/forum/index.php?webtag=MOI&msg=2546.1 Ferrari 599 GTB tutorial videos ]by lyes<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://moi3d.com/forum/index.php?webtag=MOI&msg=2429.1 Snowman figure ]by PaQ<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://cid-30cffdfa97399495.skydrive.live.com/self.aspx/.Public/Accurate|_Tapers|_MoI|_V2.zip Accurate tapers using Expressions] by Danny <br />
<small>(Not really needed since Extrude now has a taper function good if you want to learn basic trig) D.T.</small><br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://moi3d.com/forum/index.php?webtag=MOI&msg=3814.1 Discussions on ship hull techniques]<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://moiscript.weebly.com/ Videos: Functions of the Manual] by Pilou ( [[File:fr_flag.png]] in French)<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://vimeo.com/30765016 Making accurate screw threads video ]from OSTexo<br />
<br />
|}<br />
<br />
== Helper programs ==<br />
Some standalone small programs to help accomplish specific tasks.<br />
<br />
=== Obj23dmWireframe converter ===<br />
[http://moi3d.com/download/Obj23dmWireframe.zip Download Obj23dmWireframe converter]<br />
<br />
This enables bringing polygon data in an .obj file into MoI to use as a construction guide.<br />
Unzip it to some folder, and then you can run the Obj23dmWireframe.exe program. It will prompt you for the name of an .obj file to read, and after that the name of a .3dm file to create. It will read all the polygon data from the obj file and convert the edges of polygons into line segments, and then write those line segments to the 3dm file. You can then load that 3dm file into MoI and use those line segments to snap on to. Originally posted on the forum [http://moi3d.com/forum/index.php?webtag=MOI&msg=1099.1 here].<br />
<br />
=== MergeOBJ utility ===<br />
[http://moi3d.com/download/MergeOBJ.exe Download MergeOBJ utility]<br />
<br />
This utility program can combine several input OBJ files into one single OBJ file. This may be useful if you want to build up a set of different OBJ files possibly by exporting pieces with different mesh settings, and then combine them into one OBJ file if your target program wants to work with only a single file. This was created because the freely available mesh editing tools have a tendency to remove vertex normals when combining files together, this utility will preserve vertex normals. Announced on the forum [http://moi3d.com/forum/index.php?webtag=MOI&msg=3570.12 here].<br />
<br />
=== Old utilities ===<br />
[http://moi3d.com/download/3dmCurves2DXF.zip 3dmCurves2DXF converter] - This could convert curves in a 3DM file to a DXF file to be used for CAM programs. It's not needed anymore since MoI v3 now directly supports DXF file export.<br><br><br />
These utilities were to help with MoI v1 which did not export material assignments to OBJ files. Since MoI v2 can control material assignments by assigning Styles, these are no longer necessary but are still included here for v1 users.<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;[http://moi3d.com/download/SeparateOBJ.zip SeparateOBJ editor] - Breaks an OBJ file exported from MoI v1 into smaller pieces and puts separate material assignments on each piece for import into programs that require that.<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;[http://moi3d.com/download/MergeOBJ_old.zip MergeOBJ editor (old version)] - Edits an OBJ file to combine all the different objects in it into one single object so there will be just one material for the whole thing.</div>Michael Gibsonhttp://moi3d.com/wiki/index.php?title=Resources&diff=1006Resources2021-03-16T22:36:22Z<p>Michael Gibson: </p>
<hr />
<div>__NOTOC__<br />
===Links to useful MoI information on the web &nbsp;&nbsp;&nbsp;([[File:fr_flag.png]] [[Resources_%28french%29|French]])===<br />
<br />
<br />
{| style=" width: 80%; border-spacing: 10px; border: 0px; text-align: left; margin-left: auto; margin-right: auto;vertical-align:top;"<br />
|+ <br />
| <b>MOI's site links</b> || <b>External links</b><br />
|- style="vertical-align:top;"<br />
| <br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://moi3d.com MoI home page]<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://moi3d.com/forum MoI discussion forum] <br />
<br />
[[File:Img_wiki_homepage.png|25px]] [[FAQ|Frequently Asked Questions]] <br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://moi3d.com/4.0/docs/moi_help.htm MoI help file online] <br />
([[File:fr_flag.png]][http://moi3d.com/4.0/docs/moi_help_French.htm French]) ([[File:de_flag.png]] [http://moi3d.com/2.0/docs/moi_help_German.htm German]) ([[File:es_flag.png]] [http://moi3d.com/2.0/docs/moi_help_Spanish.htm Spanish]) ([[File:it_flag.png]] [http://moi3d.com/1.0/docs/moi_help_Italian.htm Italian])<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [[Shortcut Keys]]<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [[Hidden Secrets]]<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [[Scripting]] <br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://moi3d.com/forum/index.php?webtag=MOI&msg=7841.6 Burr's script archive - collection of scripts posted on the forum]<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [[V4Beta|V4 Beta release notes]]<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [[Nodeeditor|Node editor plugin]]<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://moi3d.com/4.0/EULA_retail.rtf MoI End User License Agreement]<br />
<br />
| <br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://kyticka.webzdarma.cz/3d/moi/ Petr's MoI page], a variety of informations including scripts and custom commands. ([[File:fr_flag.png]][http://moiscript.weebly.com/ French version])<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://moi.maxsm.net/ Max Smirnov's MoI scripts], numerous advanced scripts from Max.<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://moi.maxsm.net/media/files/ Max's file archive ]([[File:fr_flag.png]][http://moiscript.weebly.com/ French version])<br />
<br />
|}<br />
<br />
{| style=" width: 80%; border-spacing: 10px; border: 0px; text-align: left; margin-left: auto; margin-right: auto;vertical-align:top;"<br />
|+ <br />
| <b>Language packs:</b><br />
|- style="vertical-align:top;"<br />
|[[File:fr_flag.png]] [http://moi3d.com/4.0/docs/moi_help_French.zip French v4 update]<br />
<br />
[[File:es_flag.png]] [http://moi3d.com/2.0/docs/v2_Spanish_update.zip Spanish v2 update]&nbsp;&nbsp;<br />
<br />
[[File:it_flag.png]] [http://moi3d.com/1.0/docs/Italian_language_pack.zip Italian UI and help file]&nbsp;&nbsp;<br />
|<br />
[[File:fr_flag.png]] [http://moi3d.com/2.0/docs/french_command_reference_update.zip French v2 update]&nbsp;&nbsp;<br />
<br />
[[File:de_flag.png]] [http://moi3d.com/2.0/docs/v2_German_update.zip German v2 update]&nbsp;&nbsp;<br />
|}<br />
<br />
== Tutorials ==<br />
{| style=" width: 80%; border-spacing: 10px; border: 0px; text-align: left; margin-left: auto; margin-right: auto;vertical-align:top;"<br />
|+ <br />
| <br />
|- style="vertical-align:top;"<br />
|<br />
[[File:Img_wiki_homepage.png|25px]] [http://moi3d.com/3.0/docs/tutorials.htm MoI documentation video tutorials]<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [https://gumroad.com/l/vavRq MoI Basics video tutorial ]by Bojan Koturanović - 7 hours $25 on Gumroad<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [https://www.youtube.com/playlist?list=PLu-75I3Zd8NS0AH3O75nOuerVz9O1rTUI Tutorials on YouTube ]by Liminal4D<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://moi3d.com/forum/index.php?webtag=MOI&msg=9816.1 48 German language video tutorials ] [[File:de_flag.png]] by Stefan Schneller on jewelry design<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://moi3d.com/download/Moi3d-Overview.pdf Introduction and overview PDF ]by Fabien Franzen<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://moi3d.com/forum/index.php?webtag=MOI&msg=7389.1 Sub-d car modeling in MoI ]by Ed Ferguson<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://moi3d.com/forum/index.php?webtag=MOI&msg=9899.1 Custom truck tutorial ]by Ed Ferguson<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://www.k4icy.com/tutorials.html Tutorials] by Mike Maynard, ( [[File:fr_flag.png]] [http://moiscript.weebly.com/ 18 of them in French ] by Pilou)<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://moi3d.com/forum/index.php?webtag=MOI&msg=284.1 Ring tutorial] by Jesse Kaufman, and [http://moi3d.com/forum/index.php?webtag=MOI&msg=510.5 #2], [http://moi3d.com/forum/index.php?webtag=MOI&msg=623.1 #3], <br />
[http://moi3d.com/forum/index.php?webtag=MOI&msg=556.1 #4],<br />
[http://moi3d.com/forum/index.php?webtag=MOI&msg=538.6 #5],<br />
[http://moi3d.com/forum/index.php?webtag=MOI&msg=536.1 #6]<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://moi3d.com/forum/index.php?webtag=MOI&msg=1175.3 Simple ring using rail revolve], <br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://moi3d.com/forum/index.php?webtag=MOI&msg=1175.5 Simple ring using sweep + scaling rail for more control]<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://moi3d.com/forum/index.php?webtag=MOI&msg=1057.1 Product design forums modeling challenges] <br />
<small>(not specific to MoI but useful for general CAD modeling strategy).</small><br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://moi3d.com/forum/index.php?webtag=MOI&msg=606.4 Simple Intarsia type design]<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://moi3d.com/forum/index.php?webtag=MOI&msg=1171.2 Creating a 3-toed base foot]<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://vimeo.com/30168354 Flow workflow video ]from danperk<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://3dcncguitars.com/ Tutorials for guitar modeling in MoI and Rhino and CNC production]<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://moi3d.com/forum/index.php?webtag=MOI&msg=8845.16 Car modeling techniques] by Zarkow, and [http://moi3d.com/forum/index.php?webtag=MOI&msg=8845.5 #2] and [http://moi3d.com/forum/index.php?webtag=MOI&msg=9956.1 video tutorials]<br />
<br />
<br />
<br />
|<br />
[[File:Img_wiki_homepage.png|25px]] [https://gumroad.com/l/fGqqS MoI for Game Assets video tutorial] by Arrimus 3D - 5 hours $9.99 on Gumroad<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://moiusers.blogspot.com/ Introductory videos ]by Tom Meeks - videos with narration covering a lot of basics.<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://moi3d.com/forum/index.php?webtag=MOI&msg=6058.1 Videos from Andrei Samardac]<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://moi3d.com/forum/index.php?webtag=MOI&msg=3842.1 Video on modeling a SpacePilot controller] from lyes <br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://vimeo.com/channels/moi3d Vimeo channel with tutorials] from lyes<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://bitreality.blogspot.com/ Joe's classical column video tutorials]<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://moi3d.com/forum/index.php?webtag=MOI&msg=402.9 Japanese bathtub tutorial]<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://moi3d.com/forum/index.php?webtag=MOI&msg=446.17 Object repair tutorial]<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://moi3d.com/forum/index.php?webtag=MOI&msg=1514.1 Modeling a water can out of one smooth surface]<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://moi3d.com/forum/index.php?webtag=MOI&msg=2546.1 Ferrari 599 GTB tutorial videos ]by lyes<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://moi3d.com/forum/index.php?webtag=MOI&msg=2429.1 Snowman figure ]by PaQ<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://cid-30cffdfa97399495.skydrive.live.com/self.aspx/.Public/Accurate|_Tapers|_MoI|_V2.zip Accurate tapers using Expressions] by Danny <br />
<small>(Not really needed since Extrude now has a taper function good if you want to learn basic trig) D.T.</small><br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://moi3d.com/forum/index.php?webtag=MOI&msg=3814.1 Discussions on ship hull techniques]<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://moiscript.weebly.com/ Videos: Functions of the Manual] by Pilou ( [[File:fr_flag.png]] in French)<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://vimeo.com/30765016 Making accurate screw threads video ]from OSTexo<br />
<br />
|}<br />
<br />
== Helper programs ==<br />
Some standalone small programs to help accomplish specific tasks.<br />
<br />
=== Obj23dmWireframe converter ===<br />
[http://moi3d.com/download/Obj23dmWireframe.zip Download Obj23dmWireframe converter]<br />
<br />
This enables bringing polygon data in an .obj file into MoI to use as a construction guide.<br />
Unzip it to some folder, and then you can run the Obj23dmWireframe.exe program. It will prompt you for the name of an .obj file to read, and after that the name of a .3dm file to create. It will read all the polygon data from the obj file and convert the edges of polygons into line segments, and then write those line segments to the 3dm file. You can then load that 3dm file into MoI and use those line segments to snap on to. Originally posted on the forum [http://moi3d.com/forum/index.php?webtag=MOI&msg=1099.1 here].<br />
<br />
=== MergeOBJ utility ===<br />
[http://moi3d.com/download/MergeOBJ.exe Download MergeOBJ utility]<br />
<br />
This utility program can combine several input OBJ files into one single OBJ file. This may be useful if you want to build up a set of different OBJ files possibly by exporting pieces with different mesh settings, and then combine them into one OBJ file if your target program wants to work with only a single file. This was created because the freely available mesh editing tools have a tendency to remove vertex normals when combining files together, this utility will preserve vertex normals. Announced on the forum [http://moi3d.com/forum/index.php?webtag=MOI&msg=3570.12 here].<br />
<br />
=== Old utilities ===<br />
[http://moi3d.com/download/3dmCurves2DXF.zip 3dmCurves2DXF converter] - This could convert curves in a 3DM file to a DXF file to be used for CAM programs. It's not needed anymore since MoI v3 now directly supports DXF file export.<br><br><br />
These utilities were to help with MoI v1 which did not export material assignments to OBJ files. Since MoI v2 can control material assignments by assigning Styles, these are no longer necessary but are still included here for v1 users.<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;[http://moi3d.com/download/SeparateOBJ.zip SeparateOBJ editor] - Breaks an OBJ file exported from MoI v1 into smaller pieces and puts separate material assignments on each piece for import into programs that require that.<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;[http://moi3d.com/download/MergeOBJ_old.zip MergeOBJ editor (old version)] - Edits an OBJ file to combine all the different objects in it into one single object so there will be just one material for the whole thing.</div>Michael Gibsonhttp://moi3d.com/wiki/index.php?title=Resources&diff=1005Resources2021-02-02T12:34:29Z<p>Michael Gibson: Update EULA link for 4.0</p>
<hr />
<div>__NOTOC__<br />
===Links to useful MoI information on the web &nbsp;&nbsp;&nbsp;([[File:fr_flag.png]] [[Resources_%28french%29|French]])===<br />
<br />
<br />
{| style=" width: 80%; border-spacing: 10px; border: 0px; text-align: left; margin-left: auto; margin-right: auto;vertical-align:top;"<br />
|+ <br />
| <b>MOI's site links</b> || <b>External links</b><br />
|- style="vertical-align:top;"<br />
| <br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://moi3d.com MoI home page]<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://moi3d.com/forum MoI discussion forum] <br />
<br />
[[File:Img_wiki_homepage.png|25px]] [[FAQ|Frequently Asked Questions]] <br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://moi3d.com/4.0/docs/moi_help.htm MoI help file online] <br />
([[File:fr_flag.png]][http://moi3d.com/4.0/docs/moi_help_French.htm French]) ([[File:de_flag.png]] [http://moi3d.com/2.0/docs/moi_help_German.htm German]) ([[File:es_flag.png]] [http://moi3d.com/2.0/docs/moi_help_Spanish.htm Spanish]) ([[File:it_flag.png]] [http://moi3d.com/1.0/docs/moi_help_Italian.htm Italian])<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [[Shortcut Keys]]<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [[Hidden Secrets]]<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [[Scripting]] <br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://moi3d.com/forum/index.php?webtag=MOI&msg=7841.6 Burr's script archive - collection of scripts posted on the forum]<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [[V4Beta|V4 Beta release notes]]<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [[Nodeeditor|Node editor plugin]]<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://moi3d.com/4.0/EULA_retail.rtf MoI End User License Agreement]<br />
<br />
| <br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://kyticka.webzdarma.cz/3d/moi/ Petr's MoI page], a variety of informations including scripts and custom commands. ([[File:fr_flag.png]][http://moiscript.weebly.com/ French version])<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://moi.maxsm.net/ Max Smirnov's MoI scripts], numerous advanced scripts from Max.<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://moi.maxsm.net/media/files/ Max's file archive ]([[File:fr_flag.png]][http://moiscript.weebly.com/ French version])<br />
<br />
|}<br />
<br />
{| style=" width: 80%; border-spacing: 10px; border: 0px; text-align: left; margin-left: auto; margin-right: auto;vertical-align:top;"<br />
|+ <br />
| <b>Language packs:</b><br />
|- style="vertical-align:top;"<br />
|[[File:fr_flag.png]] [http://moi3d.com/4.0/docs/moi_help_French.zip French v4 update]<br />
<br />
[[File:es_flag.png]] [http://moi3d.com/2.0/docs/v2_Spanish_update.zip Spanish v2 update]&nbsp;&nbsp;<br />
<br />
[[File:it_flag.png]] [http://moi3d.com/1.0/docs/Italian_language_pack.zip Italian UI and help file]&nbsp;&nbsp;<br />
|<br />
[[File:fr_flag.png]] [http://moi3d.com/2.0/docs/french_command_reference_update.zip French v2 update]&nbsp;&nbsp;<br />
<br />
[[File:de_flag.png]] [http://moi3d.com/2.0/docs/v2_German_update.zip German v2 update]&nbsp;&nbsp;<br />
|}<br />
<br />
== Tutorials ==<br />
{| style=" width: 80%; border-spacing: 10px; border: 0px; text-align: left; margin-left: auto; margin-right: auto;vertical-align:top;"<br />
|+ <br />
| <br />
|- style="vertical-align:top;"<br />
|<br />
[[File:Img_wiki_homepage.png|25px]] [http://moi3d.com/3.0/docs/tutorials.htm MoI documentation video tutorials]<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [https://gumroad.com/l/vavRq MoI Basics video tutorial ]by Bojan Koturanović - 7 hours $25 on Gumroad<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [https://www.youtube.com/playlist?list=PLu-75I3Zd8NS0AH3O75nOuerVz9O1rTUI Tutorials on YouTube ]by Liminal4D<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://moi3d.com/forum/index.php?webtag=MOI&msg=9816.1 48 German language video tutorials ] [[File:de_flag.png]] by Stefan Schneller on jewelry design<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://moi3d.com/download/Moi3d-Overview.pdf Introduction and overview PDF ]by Fabien Franzen<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://moi3d.com/forum/index.php?webtag=MOI&msg=7389.1 Sub-d car modeling in MoI ]by Ed Ferguson<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://moi3d.com/forum/index.php?webtag=MOI&msg=9899.1 Custom truck tutorial ]by Ed Ferguson<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://www.k4icy.com/tutorials.html Tutorials] by Mike Maynard, ( [[File:fr_flag.png]] [http://moiscript.weebly.com/ 18 of them in French ] by Pilou)<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://moi3d.com/forum/index.php?webtag=MOI&msg=284.1 Ring tutorial] by Jesse Kaufman, and [http://moi3d.com/forum/index.php?webtag=MOI&msg=510.5 #2], [http://moi3d.com/forum/index.php?webtag=MOI&msg=623.1 #3], <br />
[http://moi3d.com/forum/index.php?webtag=MOI&msg=556.1 #4],<br />
[http://moi3d.com/forum/index.php?webtag=MOI&msg=538.6 #5],<br />
[http://moi3d.com/forum/index.php?webtag=MOI&msg=536.1 #6]<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://moi3d.com/forum/index.php?webtag=MOI&msg=1175.3 Simple ring using rail revolve], <br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://moi3d.com/forum/index.php?webtag=MOI&msg=1175.5 Simple ring using sweep + scaling rail for more control]<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://moi3d.com/forum/index.php?webtag=MOI&msg=1057.1 Product design forums modeling challenges] <br />
<small>(not specific to MoI but useful for general CAD modeling strategy).</small><br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://moi3d.com/forum/index.php?webtag=MOI&msg=606.4 Simple Intarsia type design]<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://moi3d.com/forum/index.php?webtag=MOI&msg=1171.2 Creating a 3-toed base foot]<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://vimeo.com/30168354 Flow workflow video ]from danperk<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [https://3dcncguitars.com/ Tutorials for guitar modeling in MoI and Rhino and CNC production]<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://moi3d.com/forum/index.php?webtag=MOI&msg=8845.16 Car modeling techniques] by Zarkow, and [http://moi3d.com/forum/index.php?webtag=MOI&msg=8845.5 #2] and [http://moi3d.com/forum/index.php?webtag=MOI&msg=9956.1 video tutorials]<br />
<br />
<br />
<br />
|<br />
[[File:Img_wiki_homepage.png|25px]] [https://gumroad.com/l/fGqqS MoI for Game Assets video tutorial] by Arrimus 3D - 5 hours $9.99 on Gumroad<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://moiusers.blogspot.com/ Introductory videos ]by Tom Meeks - videos with narration covering a lot of basics.<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://moi3d.com/forum/index.php?webtag=MOI&msg=6058.1 Videos from Andrei Samardac]<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://moi3d.com/forum/index.php?webtag=MOI&msg=3842.1 Video on modeling a SpacePilot controller] from lyes <br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://vimeo.com/channels/moi3d Vimeo channel with tutorials] from lyes<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://bitreality.blogspot.com/ Joe's classical column video tutorials]<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://moi3d.com/forum/index.php?webtag=MOI&msg=402.9 Japanese bathtub tutorial]<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://moi3d.com/forum/index.php?webtag=MOI&msg=446.17 Object repair tutorial]<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://moi3d.com/forum/index.php?webtag=MOI&msg=1514.1 Modeling a water can out of one smooth surface]<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://moi3d.com/forum/index.php?webtag=MOI&msg=2546.1 Ferrari 599 GTB tutorial videos ]by lyes<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://moi3d.com/forum/index.php?webtag=MOI&msg=2429.1 Snowman figure ]by PaQ<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://cid-30cffdfa97399495.skydrive.live.com/self.aspx/.Public/Accurate|_Tapers|_MoI|_V2.zip Accurate tapers using Expressions] by Danny <br />
<small>(Not really needed since Extrude now has a taper function good if you want to learn basic trig) D.T.</small><br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://moi3d.com/forum/index.php?webtag=MOI&msg=3814.1 Discussions on ship hull techniques]<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://moiscript.weebly.com/ Videos: Functions of the Manual] by Pilou ( [[File:fr_flag.png]] in French)<br />
<br />
[[File:Img_wiki_homepage.png|25px]] [http://vimeo.com/30765016 Making accurate screw threads video ]from OSTexo<br />
<br />
|}<br />
<br />
== Helper programs ==<br />
Some standalone small programs to help accomplish specific tasks.<br />
<br />
=== Obj23dmWireframe converter ===<br />
[http://moi3d.com/download/Obj23dmWireframe.zip Download Obj23dmWireframe converter]<br />
<br />
This enables bringing polygon data in an .obj file into MoI to use as a construction guide.<br />
Unzip it to some folder, and then you can run the Obj23dmWireframe.exe program. It will prompt you for the name of an .obj file to read, and after that the name of a .3dm file to create. It will read all the polygon data from the obj file and convert the edges of polygons into line segments, and then write those line segments to the 3dm file. You can then load that 3dm file into MoI and use those line segments to snap on to. Originally posted on the forum [http://moi3d.com/forum/index.php?webtag=MOI&msg=1099.1 here].<br />
<br />
=== MergeOBJ utility ===<br />
[http://moi3d.com/download/MergeOBJ.exe Download MergeOBJ utility]<br />
<br />
This utility program can combine several input OBJ files into one single OBJ file. This may be useful if you want to build up a set of different OBJ files possibly by exporting pieces with different mesh settings, and then combine them into one OBJ file if your target program wants to work with only a single file. This was created because the freely available mesh editing tools have a tendency to remove vertex normals when combining files together, this utility will preserve vertex normals. Announced on the forum [http://moi3d.com/forum/index.php?webtag=MOI&msg=3570.12 here].<br />
<br />
=== Old utilities ===<br />
[http://moi3d.com/download/3dmCurves2DXF.zip 3dmCurves2DXF converter] - This could convert curves in a 3DM file to a DXF file to be used for CAM programs. It's not needed anymore since MoI v3 now directly supports DXF file export.<br><br><br />
These utilities were to help with MoI v1 which did not export material assignments to OBJ files. Since MoI v2 can control material assignments by assigning Styles, these are no longer necessary but are still included here for v1 users.<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;[http://moi3d.com/download/SeparateOBJ.zip SeparateOBJ editor] - Breaks an OBJ file exported from MoI v1 into smaller pieces and puts separate material assignments on each piece for import into programs that require that.<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;[http://moi3d.com/download/MergeOBJ_old.zip MergeOBJ editor (old version)] - Edits an OBJ file to combine all the different objects in it into one single object so there will be just one material for the whole thing.</div>Michael Gibsonhttp://moi3d.com/wiki/index.php?title=Shortcut_Keys&diff=917Shortcut Keys2021-01-19T05:33:06Z<p>Michael Gibson: </p>
<hr />
<div>Shortcut keys documentation page on how to define custom shortcuts [http://moi3d.com/2.0/docs/moi_command_reference11.htm#shortcutkeys here]<br />
<br />
<br />
See [http://kyticka.webzdarma.cz/3d/moi/ Petr's MoI page] for a bunch of different scripts that can be assigned to shortcut keys to automate various tasks such as selection of certain types of objects, etc...<br />
<br />
<br />
Default shortcuts:<br />
<br />
<table style="text-align:left;"><br />
<tr><th>Key&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</th><th>Command</th></tr><br />
<tr><td>F1</td><td>Help</td></tr><br />
<tr><td>Ctrl+A</td><td>Select all</td></tr><br />
<tr><td>Ctrl+C</td><td>Copy to clipboard</td></tr><br />
<tr><td>Ctrl+N</td><td>File/New</td></tr><br />
<tr><td>Ctrl+O</td><td>File/Open</td></tr><br />
<tr><td>Ctrl+S</td><td>File/Save</td></tr><br />
<tr><td>Ctrl+V</td><td>Paste from clipboard</td></tr><br />
<tr><td>Ctrl+X</td><td>Cut to clipboard</td></tr><br />
<tr><td>Ctrl+Y</td><td>Redo</td></tr><br />
<tr><td>Ctrl+Z</td><td>Undo</td></tr><br />
<tr><td>Delete</td><td>Delete</td></tr><br />
</table><br />
<br />
<br />
Mouse modifier keys:<br />
<br />
Note that in MoI you do not need to hold down Shift to do multiple select, multiple selection is enabled just by default on regular clicks. You can deselect an already selected curve or face by clicking on it a second time, again no shift or control key is necessary for the regular case.<br />
<br />
Ctrl+Drag can be used to duplicate an object, it will drag off a copy of the object.<br />
<br />
Shift+Ctrl+Drag can be used to force a window selection. This can be helpful if your view is very full of stuff and you don't have an easily accessible empty area on the screen to click on which is the regular way to do a window selection.<br />
<br />
Ctrl+click can be used for a "prefer deselection" mode, which will deselect a brep on a single click rather than drilling in, and will make a preference for targeting already selected curves in a dense scene, making it a bit easier to deselect things in some cases. (v2 only)<br />
<br />
Alt works to suppress snapping while picking a point in a drawing command. If you are hitting too many snappable areas, press Alt and you will be able to place a point without the snaps kicking in.<br />
<br />
The normal way to manipulate the view in MoI with the mouse is to use Right click for Rotate, Middle click for Pan, and the scroll wheel for zooming. But there are several alternative methods available for compatibility with a variety of other apps:<br />
<br />
Alt + Left drag = Rotate<br><br />
Alt + Shift + Left drag = Pan<br><br />
Alt + Ctrl + Left drag up and down = Zoom<br><br />
Ctrl + Right drag up and down = Zoom<br><br />
Alt + Right drag up and down = Zoom<br><br />
Shift + Right drag = Pan<br><br />
<br />
<br />
<br />
The Ctrl key can be used as a shortcut for a checkbox option in several commands. While drawing a freeform curve or using Add pt, holding down Ctrl will place the point you click on as a corner point, same as clicking the "Make corner point" checkbox. In the Rotate and Scale transform commands, holding down Ctrl will drop a copy of an object when you click, same as checking the "Make copies" checkbox option.<br />
<br />
<br />
<br />
Shortcuts related to Styles:<br />
<br />
On a scene browser color swatch, Ctrl+Left click will pop up the color picker as a quick way to edit a style's color.<br />
<br />
On a style color swatch (either in the scene browser or in the dropdown from the properties panel), holding down Shift while clicking on the swatch will assign the style to the parent object without modifying any sub-objects. The parent style is used when brand new faces are created in a solid for things like the Fillet command, when the new fillet surface is bordered by multiple different styles.<br />
<br />
In the Edit styles dialog, right-clicking on a style works as a shortcut for selecting it and pushing the "Edit" button.<br />
<br />
On the properties panel, right-clicking on the style line will pop up the Edit style dialog and let you edit the name and/or color of that style.<br />
<br />
<br />
Other scene browser shortcuts:<br />
<br />
Ctrl+click on a browser item's status icon (where the eye icon is normally displayed) will toggle Lock on or off.<br />
<br />
When clicking on the selection dot of a scene browser item, by default only visible objects belonging to that slow will be selected. If you hold down shift while clicking on the selection dot any hidden objects belonging to that slot will be shown and also selected.</div>Michael Gibsonhttp://moi3d.com/wiki/index.php?title=MediaWiki:Common.css&diff=916MediaWiki:Common.css2021-01-18T14:20:23Z<p>Michael Gibson: </p>
<hr />
<div>/** CSS placed here will be applied to all skins */<br />
<br />
@import url('https://fonts.googleapis.com/css2?family=Open+Sans:ital,wght@0,400;0,700;1,400&display=swap');<br />
<br />
body {<br />
font-size:11px;<br />
font-family:"Open Sans", "Lucida Sans", "Lucida Grande", "Trebuchet MS", Verdana, sans-serif;<br />
<br />
background-color:#246;<br />
<br />
background-image:url(/images/texture_mirror.png);<br />
xbackground-repeat:no-repeat;<br />
xbackground-position:left;<br />
}<br />
<br />
.pBody {<br />
background:transparent;<br />
border:none;<br />
}<br />
<br />
#sidebar .portlet > h3 {<br />
font-weight:bold;<br />
font-size:16px;<br />
color:#FFFFFF;<br />
text-shadow:2px 2px 3px #000, -1px -1px 2px #000;<br />
}<br />
<br />
#sidebar .portlet li {<br />
font-size:14px;<br />
margin:1px 0px;<br />
}<br />
<br />
#sidebar .portlet a {<br />
color:#FFFFFF;<br />
text-shadow:2px 2px 3px #000, -1px -1px 2px #000;<br />
}<br />
<br />
#p-personal a.new:visited, #p-personal li a, #p-personal a.new {<br />
color:white;<br />
}<br />
<br />
#p-personal li a:hover {<br />
background-color: #222;<br />
text-decoration: none;<br />
}<br />
<br />
#p-logo {<br />
height:90px;<br />
}<br />
<br />
#p-logo a, #p-logo a:hover {<br />
height:90px;<br />
background-position-x:50% !important;<br />
}<br />
<br />
div#column-one {<br />
padding-top:90px;<br />
}<br />
<br />
<br />
/* Disable "Main page" h1 element. */<br />
body.page-Main_Page h1.firstHeading { display:none; }<br />
<br />
/* Disable footer. */<br />
#footer { display:none; }<br />
<br />
/* Disable external link marker. */<br />
#bodyContent a.external { background:none; padding:0px; }<br />
#bodyContent a.external, #bodyContent a.external[href ^="https://"] { background:none; padding:0px; }</div>Michael Gibsonhttp://moi3d.com/wiki/index.php?title=Resources&diff=915Resources2021-01-02T01:13:06Z<p>Michael Gibson: </p>
<hr />
<div><big>Links to useful MoI information on the web</big>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;([[Resources_%28french%29|Version Française ici]])<br />
<br />
[http://moi3d.com MoI home page] <br />
<br />
[http://moi3d.com/forum MoI discussion forum]<br />
<br />
[[FAQ|Frequently Asked Questions]]<br />
<br />
[http://moi3d.com/4.0/docs/moi_help.htm MoI help file online] &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;([http://moi3d.com/4.0/docs/moi_help_French.htm French])&nbsp;&nbsp;([http://moi3d.com/2.0/docs/moi_help_German.htm German])&nbsp;&nbsp;([http://moi3d.com/2.0/docs/moi_help_Spanish.htm Spanish])&nbsp;&nbsp;([http://moi3d.com/1.0/docs/moi_help_Italian.htm Italian])<br />
<br />
[[Shortcut Keys]]<br />
<br />
[[Hidden Secrets]]<br />
<br />
[[Scripting]] <br />
<br />
[http://kyticka.webzdarma.cz/3d/moi/ Petr's MoI page], contains a variety of MoI information including scripts and custom commands. ([http://moiscript.weebly.com/ French version])<br />
<br />
[http://moi.maxsm.net/ Max Smirnov's MoI scripts], numerous advanced scripts from Max. [http://moi.maxsm.net/media/files/ Max's file archive ]([http://moiscript.weebly.com/ French version])<br />
<br />
[http://moi3d.com/forum/index.php?webtag=MOI&msg=7841.6 Burr's script archive - collection of scripts that have been posted on the forum]<br />
<br />
[[V4Beta|V4 Beta release notes]]<br />
<br />
[[Nodeeditor|Node editor plugin]]<br />
<br />
[http://moi3d.com/3.0/EULA_retail.rtf MoI End User License Agreement]<br />
<br />
<br />
Language packs: ([http://moi3d.com/4.0/docs/moi_help_French.zip French v4 update])&nbsp;&nbsp;([http://moi3d.com/2.0/docs/v2_Spanish_update.zip Spanish v2 update])&nbsp;&nbsp;([http://moi3d.com/1.0/docs/Italian_language_pack.zip Italian UI and help file]) ([http://moi3d.com/2.0/docs/french_command_reference_update.zip French v2 update]) ([http://moi3d.com/2.0/docs/v2_German_update.zip German v2 update])<br />
<br />
<br />
<br />
== Tutorials ==<br />
[http://moi3d.com/3.0/docs/tutorials.htm MoI documentation video tutorials]<br />
<br />
[https://gumroad.com/l/fGqqS MoI for Game Assets video tutorial by Arrimus 3D - 5 hours $9.99 on Gumroad]<br />
<br />
[https://gumroad.com/l/vavRq MoI Basics video tutorial by Bojan Koturanović - 7 hours $25 on Gumroad]<br />
<br />
[http://moiusers.blogspot.com/ Introductory videos by Tom Meeks] - videos with narration covering a lot of basics.<br />
<br />
[https://www.youtube.com/playlist?list=PLu-75I3Zd8NS0AH3O75nOuerVz9O1rTUI Tutorials on YouTube by Liminal4D]<br />
<br />
[http://moi3d.com/forum/index.php?webtag=MOI&msg=9816.1 48 German language video tutorials by Stefan Schneller on jewelry design]<br />
<br />
[http://moi3d.com/download/Moi3d-Overview.pdf Introduction and overview PDF by Fabien Franzen]<br />
<br />
[http://moi3d.com/forum/index.php?webtag=MOI&msg=7389.1 Sub-d car modeling in MoI by Ed Ferguson]<br />
<br />
[http://moi3d.com/forum/index.php?webtag=MOI&msg=9899.1 Custom truck tutorial by Ed Ferguson]<br />
<br />
[http://www.k4icy.com/tutorials.html Mike Maynard's tutorials], and here 18 of them [http://moiscript.weebly.com/ in French by Pilou]<br />
<br />
[http://moi3d.com/forum/index.php?webtag=MOI&msg=6058.1 Videos from Andrei Samardac]<br />
<br />
[http://moi3d.com/forum/index.php?webtag=MOI&msg=3842.1 Video from lyes on modeling a SpacePilot controller]<br />
<br />
[http://vimeo.com/channels/moi3d Vimeo channel with tutorials from lyes]<br />
<br />
[http://bitreality.blogspot.com/ Joe's classical column video tutorials]<br />
<br />
[http://moi3d.com/forum/index.php?webtag=MOI&msg=402.9 Japanese bathtub tutorial]<br />
<br />
[http://moi3d.com/forum/index.php?webtag=MOI&msg=446.17 Object repair tutorial]<br />
<br />
[http://moi3d.com/forum/index.php?webtag=MOI&msg=284.1 Ring tutorial by Jesse Kaufman], and [http://moi3d.com/forum/index.php?webtag=MOI&msg=510.5 #2], [http://moi3d.com/forum/index.php?webtag=MOI&msg=623.1 #3], <br />
[http://moi3d.com/forum/index.php?webtag=MOI&msg=556.1 #4],<br />
[http://moi3d.com/forum/index.php?webtag=MOI&msg=538.6 #5],<br />
[http://moi3d.com/forum/index.php?webtag=MOI&msg=536.1 #6]<br />
<br />
[http://moi3d.com/forum/index.php?webtag=MOI&msg=1175.3 Simple ring using rail revolve], and [http://moi3d.com/forum/index.php?webtag=MOI&msg=1175.5 variant using sweep + scaling rail for more control]<br />
<br />
[http://moi3d.com/forum/index.php?webtag=MOI&msg=1057.1 Product design forums modeling challenges] (not specific to MoI but useful for general CAD modeling strategy).<br />
<br />
[http://moi3d.com/forum/index.php?webtag=MOI&msg=606.4 Simple Intarsia type design]<br />
<br />
[http://moi3d.com/forum/index.php?webtag=MOI&msg=1171.2 Creating a 3-toed base foot]<br />
<br />
[http://moi3d.com/forum/index.php?webtag=MOI&msg=1514.1 Modeling a water can out of one smooth surface]<br />
<br />
[http://moi3d.com/forum/index.php?webtag=MOI&msg=2546.1 Ferrari 599 GTB tutorial videos by lyes]<br />
<br />
[http://moi3d.com/forum/index.php?webtag=MOI&msg=2429.1 Snowman figure by PaQ]<br />
<br />
[http://cid-30cffdfa97399495.skydrive.live.com/self.aspx/.Public/Accurate|_Tapers|_MoI|_V2.zip Accurate tapers using Expressions by Danny] ( Not really needed since Extrude now has a taper function good if you want to learn basic trig) D.T.<br />
<br />
[http://moi3d.com/forum/index.php?webtag=MOI&msg=3814.1 Discussions on ship hull techniques]<br />
<br />
[http://moiscript.weebly.com/ Videos: Functions of the Manual by Pilou (in French)]<br />
<br />
[http://vimeo.com/30765016 Making accurate screw threads video from OSTexo]<br />
<br />
[http://vimeo.com/30168354 Flow workflow video from danperk]<br />
<br />
[https://3dcncguitars.com/ Tutorials for guitar modeling in MoI and Rhino and CNC production]<br />
<br />
[http://moi3d.com/forum/index.php?webtag=MOI&msg=8845.16 Car modeling techniques by Zarkow], and [http://moi3d.com/forum/index.php?webtag=MOI&msg=8845.5 #2] and [http://moi3d.com/forum/index.php?webtag=MOI&msg=9956.1 video tutorials]<br />
<br />
== Helper programs ==<br />
Some standalone small programs to help accomplish specific tasks.<br />
<br />
=== Obj23dmWireframe converter ===<br />
[http://moi3d.com/download/Obj23dmWireframe.zip Download Obj23dmWireframe converter]<br />
<br />
This enables bringing polygon data in an .obj file into MoI to use as a construction guide.<br />
Unzip it to some folder, and then you can run the Obj23dmWireframe.exe program. It will prompt you for the name of an .obj file to read, and after that the name of a .3dm file to create. It will read all the polygon data from the obj file and convert the edges of polygons into line segments, and then write those line segments to the 3dm file. You can then load that 3dm file into MoI and use those line segments to snap on to. Originally posted on the forum [http://moi3d.com/forum/index.php?webtag=MOI&msg=1099.1 here].<br />
<br />
=== MergeOBJ utility ===<br />
[http://moi3d.com/download/MergeOBJ.exe Download MergeOBJ utility]<br />
<br />
This utility program can combine several input OBJ files into one single OBJ file. This may be useful if you want to build up a set of different OBJ files possibly by exporting pieces with different mesh settings, and then combine them into one OBJ file if your target program wants to work with only a single file. This was created because the freely available mesh editing tools have a tendency to remove vertex normals when combining files together, this utility will preserve vertex normals. Announced on the forum [http://moi3d.com/forum/index.php?webtag=MOI&msg=3570.12 here].<br />
<br />
=== Old utilities ===<br />
[http://moi3d.com/download/3dmCurves2DXF.zip 3dmCurves2DXF converter] - This could convert curves in a 3DM file to a DXF file to be used for CAM programs. It's not needed anymore since MoI v3 now directly supports DXF file export.<br><br><br />
These utilities were to help with MoI v1 which did not export material assignments to OBJ files. Since MoI v2 can control material assignments by assigning Styles, these are no longer necessary but are still included here for v1 users.<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;[http://moi3d.com/download/SeparateOBJ.zip SeparateOBJ editor] - Breaks an OBJ file exported from MoI v1 into smaller pieces and puts separate material assignments on each piece for import into programs that require that.<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;[http://moi3d.com/download/MergeOBJ_old.zip MergeOBJ editor (old version)] - Edits an OBJ file to combine all the different objects in it into one single object so there will be just one material for the whole thing.</div>Michael Gibsonhttp://moi3d.com/wiki/index.php?title=V4Beta&diff=914V4Beta2020-12-28T13:45:14Z<p>Michael Gibson: </p>
<hr />
<div><big>Release notes for each V4 beta release are gathered here.</big><br />
<br />
== Nov-12-2017 ==<br />
<br />
[http://moi3d.com/forum/index.php?webtag=MOI&msg=8675.1 Forum announcement]<br />
<br />
V4 is a major rewrite with changes on many levels so please be on the lookout for any bugs.<br />
<br />
The main new functionality is that MoI is now a 64-bit program for both Windows and Mac and the Mac version is a native build and doesn't use Wineskin anymore.<br />
<br />
New system requirements are Windows 7/8/10 64-bit or macOS 10.8 - 10.13 .<br />
<br />
Polygon conversion can now use all your system memory instead of running into 32-bit memory limits.<br />
<br />
A lot of various little quirky things should be tuned up for the Mac version.<br />
<br />
The only known areas still not quite working yet are snap text labels and dotted/dashed line styles in viewports and Mac trackpad gestures aren't fully functional yet.<br />
<br />
<br />
== Nov-18-2017 ==<br />
<br />
[http://moi3d.com/forum/index.php?webtag=MOI&msg=8682.1 Forum announcement]<br />
<br />
Bug fixes:<br />
<br />
Fix for the frozen UI bug when restoring a maximized main window from a minimized or hidden state. Please let me know if you see it again.<br />
<br />
Fix Mac deployment issue that was preventing things from working on OS X 10.8 and 10.9, MoI should run ok there now.<br />
<br />
Fix font name bug where MoI V4 would overwrite the UI font name property that V3 uses in moi.ini and so the V3 UI font changed after you ran V4. They should now stay separate.<br />
<br />
Fix bug where dropdown controls in commands wouldn't reinitialize to their last used value. Reported by bemfarmer in the forum here:<br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=8675.204<br />
<br />
Fix construction line snapping bug reported in the forum by Moujiik here:<br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=8675.119<br />
<br />
Not a whole lot of changes, normally I would have waited until a bit more were batched up but the frozen UI bug was pretty significant so I wanted to try and nail that one down soon.<br />
<br />
<br />
== Nov-27-2017 ==<br />
<br />
[http://moi3d.com/forum/index.php?webtag=MOI&msg=8704.1 Forum announcement]<br />
<br />
Bug fixes:<br />
<br />
Saving to IGES and STEP files - fixed a bug where using .stp or .igs file extensions wasn't working on Mac.<br />
<br />
Mac full screen mode - fix for the problem where the view controls window would show on the desktop space, sending you back to the desktop the first time you moved the mouse over a viewport after going to full screen. Please let me know if you see it again.<br />
<br />
Updated shortcut key editor - Make the "Key" column expand to whatever width is necessary to show the longest key combo. Fixes problem reported in the forum by Metin here:<br />
http://moi3d.com/forum/messages.php?webtag=MOI&msg=8682.42<br />
<br />
Viewport toolbar - fixed a bug where doing view manipulation using the bottom viewport toolbar could miss the mouse up event and get stuck.<br />
<br />
Orientation picker - fixed a sporadic drawing bug with the orientation picker reported on the forum by Max here:<br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=8682.16<br />
<br />
Shortcut keys with Shift - Fixed a bug in shortcut keys using shift + number keys. V4 was generating Shift+1 as Shift+! which was incompatible with V3, V3 would convert it back to Shift+1 which was then not recognized by V4. V4 should now generate Shift+1 for that key combination and not Shift+! anymore. Fixes a bug reported on the forum by Marco here:<br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=8682.50<br />
<br />
Background images - Fixed a crash when making a background image from a bitmap file with lower than 32-bit color depth. Reported on the forum by Vladimir here:<br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=8682.100<br />
<br />
Undo - Fixed a bug where undo wouldn't find the proper object to restore in some cases. Reported on the forum by Val here:<br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=8682.83<br />
<br />
<br />
Scripting:<br />
<br />
moi.geometryDatabase.findStyle() - fixed a bug in the findStyle() function for the "create if not found" case, reported on the forum by Max here:<br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=8682.16<br />
<br />
obj.getBoundingBox() - The boolean parameter for getting high accuracy bounds was marked as required in v4, while in v3 it was optional with a default of false. Updated v4 to match v3.<br />
<br />
moi.filesystem.openFileStream - switch to use QTextStream for reading to get better unicode support. Unicode files with byte order marks should be supported now, the default will be UTF-8 if no byte order mark is found. Also added new methods .setWriteBOM( boolean ) which you can call to make writing a text file write the byte order mark at the front (default is no BOM), and .setCodec( name ) to have specific control over what encoding to use for reading or writing. Supported codecs are listed here: http://doc.qt.io/qt-5/qtextcodec.html#details .<br />
<br />
moi://appdata/ - add support for moi://appdata/ URLs so you can load HTML resources like images from the MoI app data directory. moi://appdata/ will resolve to %AppData%\Moi on Windows and to ~/Library/Application Support/Moi on Mac.<br />
<br />
String to integer conversion - Updated so a string value of "1.0" will be successfully converted to an integer value of 1 rather than rejecting it. Fixes a change in behavior from v3 to v4 that broke some of Brian's scripts.<br />
<br />
factory.setValue() - switched to v3 behavior so sending the wrong object type doesn't trigger an exception. Fixes the SpurGearProfile script.<br />
<br />
<br />
== Dec-11-2017 ==<br />
<br />
[http://moi3d.com/forum/index.php?webtag=MOI&msg=8731.1 Forum announcement]<br />
<br />
Bug fixes and changes:<br />
<br />
Mac full screen mode - getting sent back to the desktop the first time you moved the mouse over each viewport after going to full screen mode should be finally fixed! Also Ctrl+Cmd+F shortcut key for full screen toggle should now work.<br />
<br />
Mac trackpad and Magic Mouse - Finished implementing multitouch view navigation for the trackpad and Magic Mouse on Mac. Magic Mouse should be back to zooming instead of panning. The Zoom speed can be adjusted in moi.ini [MultiTouch] MagicMouseZoomSpeed=1.0 . Change this to something like 2.0 to make the default behavior faster or 0.5 to go slower. You can also hold down the Ctrl key to go slower as well.<br />
<br />
Mac ignored mouse bug - Fix for bug where mousemove events would stop working in certain conditions when restoring the main window from hidden or showing a modal dialog. Fixes bug reported by Finema here: http://moi3d.com/forum/index.php?webtag=MOI&msg=8675.189<br />
<br />
Updated "On" object snap mechanics - Changed the way On object snap for curves works to get better accuracy with curves far from the origin.<br />
<br />
Incorrect default values for some commands - Fixed a bug where the default values for the Text and Rebuild commands were incorrect on locales that use commas for the decimal separator. Reported by Vladimir on the forum here: http://moi3d.com/forum/index.php?webtag=MOI&msg=8704.32<br />
<br />
Trim - fixed a bug in the Edit &gt; Trim command where if an object was set to be both an object to be trimmed as well as a cutting object it could get hidden unexpectedly.<br />
<br />
Command button highlighting - Fix for command buttons remaining highlighted after command ends. Reported by Vladimir on the forum here: http://moi3d.com/forum/index.php?webtag=MOI&msg=8704.32<br />
<br />
Read-only file handling - Fix bug where using File &gt; Save wasn't prompting for a new file name when the current opened file was set to read-only. Reported in the forum by mhasse here: http://moi3d.com/forum/index.php?webtag=MOI&msg=8714.1<br />
<br />
Crash fix for newer CPU/Older OS combination - Fix for 0xc000001d illegal instruction exception when running on Win7 SP0 with a newer AVX-capable CPU.<br />
<br />
Hidden-line generation - Increase Canvas megapixel size limit from 175 to 1000.<br />
<br />
Degenerate box error - fixed bug where a script error would be displayed if you made a degenerate rectangle in any of the Draw solid &gt; Box commands.<br />
<br />
Update text input fields - Text input fields were only applying typed in values when the input panel was open, or when the Enter or Tab keys were pressed, not if just clicking outside the field as they now will. Should fix a PDF export dialog bug reported by reported by Moujiik here: http://moi3d.com/forum/index.php?webtag=MOI&msg=8704.15<br />
<br />
<br />
Scripting:<br />
<br />
viewport.setCameraAndTarget() - Fixed bug in viewport.setCameraAndTarget() function, reported in the forum by Ralf here: http://moi3d.com/forum/index.php?webtag=MOI&msg=8704.25<br />
<br />
Process memory use limit - Added option in moi.ini for limiting maximum memory use - Windows only. Can be set in moi.ini under [Settings] MaxProcessMemoryUse=x . Requested by Burr on the forum here: http://moi3d.com/forum/index.php?webtag=MOI&msg=8704.26<br />
<br />
moi.view.screenshot - Fix bug where the moi.view.screenshot() method was capturing the wrong area of the screen on Mac.<br />
<br />
<br />
Enable setting default values for controls from shortcut keys. UI controls can now be triggered or initialized with custom values if the control's id is supplied in the command-line parameters for the command. For buttons, the presence of the button's id value in command line parameters will trigger a UI event for the button the first time that it is shown, this will have the same effect as clicking the button.<br />
For dropdowns and checkboxes, the presence of the control's id in an id=value pair will use that value to initialize the control rather than taking the last used or default value as normal.<br />
<br />
This makes it possible to set up shortcut keys that package up different options within commands, for example:<br />
<br />
Trim addtrimpoints removekeepmode=keep<br />
<br />
Trim addtrimpoints removekeepmode=remove<br />
<br />
Trim isocurve isodir=u<br />
<br />
Trim isocurve isodir=v<br />
<br />
Line bothsides=true<br />
<br />
Extrude tapered<br />
<br />
<br />
<br />
== Feb-9-2018 ==<br />
<br />
[http://moi3d.com/forum/index.php?webtag=MOI&msg=8814.1 Forum announcement]<br />
<br />
Text labels inside viewports still not implemented yet, that's the last remaining thing still left to get v4 fully caught up.<br />
<br />
<br />
Bug fixes and changes:<br />
<br />
<br />
Dashed/Dotted line styles implemented so things like the grid, construction lines, and hidden line display should be looking proper now.<br />
<br />
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.<br />
<br />
DXF import layers - Support reading layers in the DXF file as Styles in MoI.<br />
<br />
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<br />
<br />
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.<br />
<br />
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.<br />
<br />
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.<br />
<br />
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<br />
<br />
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.<br />
<br />
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.<br />
<br />
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.<br />
<br />
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<br />
<br />
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<br />
<br />
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.<br />
<br />
Windows shutdown bug - Fix bug when shutting down Windows while MoI is still open reported by Vladimir in the forum here:<br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=8731.81<br />
<br />
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<br />
<br />
Fix crash on program shutdown if license key dialog was canceled.<br />
<br />
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<br />
<br />
<br />
<br />
Scripting:<br />
<br />
Added additional script interface for Curve and CurveSegment objects.<br />
<br />
For both Curves and CurveSegments:<br />
<br />
crv.domainMin - Property that returns lower bound of the curve's parametric domain.<br />
<br />
crv.domainMax - Property that returns upper bound of the curve's parametric domain.<br />
<br />
crv.evaluatePoint( t ) - Function returning a point for the given parameter value.<br />
<br />
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.<br />
<br />
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.<br />
<br />
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...<br />
<br />
crv.isPlanar - Property that returns true if the curve's control polygon is planar.<br />
<br />
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.<br />
<br />
crv.isOnPlane( frame ) - Function that returns true if the curve is on the given frame's x/y plane.<br />
<br />
crv.isOnParallelPlane( frame ) - Function that returns true if the curve is on a plane parallel to the given frame's x/y plane.<br />
<br />
crv.isClosed - Property that returns true if the curve is closed.<br />
<br />
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).<br />
<br />
crv.isDegenerate - Property that returns true if the curve has a degenerate control polygon with all the points stacked in the same spot.<br />
<br />
crv.isLine - Property that returns true if the curve has the shape of a line.<br />
<br />
crv.isSimpleLine - Property that returns true if the curve is a simple line segment made up of only 2 control points.<br />
<br />
crv.isCircle - Property that returns true if the curve is a circle.<br />
<br />
crv.isArc - Property that returns true if the curve is a circular arc.<br />
<br />
crv.isEllipse - Property that returns true if the curve is an ellipse (either a full ellipse or an elliptical arc).<br />
<br />
crv.conicFrame - Property that returns the coordinate frame of a circle, arc, or ellipse. Only valid if isCircle, isArc, or isEllipse returns true.<br />
<br />
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.<br />
<br />
crv.conicRadiusY - Property that returns the y-axis radius of an ellipse. Only valid if isEllipse returns true.<br />
<br />
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.<br />
<br />
<br />
The following only apply to Curves, not CurveSegments:<br />
<br />
crv.isClickSelected - Property that returns true if the curve was selected by a mouse click action.<br />
<br />
crv.clickSelectionPoint - Property that returns the point on the curve where it was click selected. Only valid if isClickSelected returns true.<br />
<br />
crv.clickSelectionParam - Property that returns the parameter value of the curve where it was click selected. Only valid if isClickSelected returns true.<br />
<br />
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.<br />
<br />
<br />
Added moi.ui.systemDPI property.<br />
<br />
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.<br />
<br />
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.<br />
<br />
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.<br />
<br />
Add a container with id="CommandBarCustomUI" in CommandBar.htm to make it easier to populate the UI from a startup script.<br />
Example:<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;var container = moi.ui.commandBar.CommandBarCustomUI;<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;container.insertAdjacentHTML( 'beforeEnd', '<moi:CommandButton>Test1</moi:CommandButton>' );<br />
<br />
Appdata/scripts directory - you can add a scripts folder inside appdata and MoI will also check there for running an "instant script".<br />
<br />
<br />
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.<br><br />
The trackpadgesture event object has these properties:<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;event.gestureType : string value of 'Scroll', 'SmartZoom', 'Zoom', or 'Rotate'.<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;event.deltaX, event.deltaY : movement for Scroll , 2 fingers swiping.<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;event.numTouches : number of touch points being used for Scroll.<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;event.scaleFactor : scale factor for pinch/zoom<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;event.angle : angle change for Rotate.<br><br />
<br />
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();<br />
<br />
<br />
== May-12-2018 ==<br />
<br />
[http://moi3d.com/forum/index.php?webtag=MOI&msg=8936.1 Forum announcement]<br />
<br />
I think this version is all caught up now, the last remaining things that were missing from v3 such as text labels inside viewports are now implemented and all regression bugs that have been reported should now be fixed. So if that holds up this should be a major milestone for v4 where I'll now be switching to working on new features rather than rewriting stuff from v3.<br />
<br />
Bug fixes and changes:<br />
<br />
<br />
Implemented text rendering inside viewports for things like snapping tag labels ("End", "Mid", etc...)<br />
<br />
OBJ export - Fixed bug where invalid OBJ file would be generated if object names had extended characters in them. Reported through e-mail by Lewis.<br />
<br />
STEP import - Fixed crash bug in STEP import reported through e-mail by John Lewis.<br />
<br />
iMac Pro draw speed - Fixed bug where too frequent UI updates caused a noticeable draw speed slowdown compared to V3 on some high dpi Mac machines. Fixes bug reported by Metin.<br />
<br />
Mouse cursors - Fixed various bugs where the mouse cursor wasn't updating properly, reported by Vladimir in the forum here:<br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=8814.128<br />
<br />
Text field right click context menu - Fixed a bug with right click on text input fields in menus being offset.<br />
<br />
Menu hover state - Fixed a bug where when launching a menu, the button hover state on the launching UI would get stuck until another click.<br />
<br />
Color picker custom colors - Custom colors set in the color picker dialog are now saved to and restored from moi.ini so they will persist between program sessions.<br />
Fixes bug reported by Moujiik on the forum here: http://moi3d.com/forum/index.php?webtag=MOI&msg=8855.5<br />
<br />
Object properties - Fixed bug where cached objects in the async worker process wouldn't get updated if style, name, or selection changed.<br />
Fixes bug reported on the newsgroup by Brian here: http://moi3d.com/forum/index.php?webtag=MOI&msg=8814.81<br />
<br />
Selection filter crash - Fix for crash when setting a style selection filter, reported by Shane on the forum here: http://moi3d.com/forum/index.php?webtag=MOI&msg=8872.1<br />
<br />
Busy script interruption - Scripts that do a lot of calculation in loops can now be interrupted by pushing the Escape key.<br />
Requested on the forum by Marco here: http://moi3d.com/forum/index.php?webtag=MOI&msg=8814.63<br />
<br />
Trackpad scroll gesture - Fix bug where Mac trackpad scroll gesture could be treated as a mouse wheel event,<br />
if the first touch happened on a different window.<br />
Fixes bug reported by Max in the forum here: http://moi3d.com/forum/index.php?webtag=MOI&msg=8814.21<br />
<br />
DXF export arcs and circles - Previously arcs and circles that had a normal vector pointing straight down in the negative z axis direction would get flipped in the export, because there are a couple of programs that do not read those correctly. But this direction flip is bad for CNC usage, so the default now is to not flip them. It is possible to return to the previous flipping behavior by a setting in moi.ini: [DXF Export] FlipNegativeZAxisCirclesAndArcs=y<br />
Fixes a bug reported in the forum by Vladimir here: http://moi3d.com/forum/index.php?webtag=MOI&msg=6925.419<br />
<br />
VSync - Added option in moi.ini to limit screen redraw with vsync, might help if you are experiencing a tearing type effect in the display.<br />
Can be set under [View] VSync=y . Requested by torsten in the forum here: http://moi3d.com/forum/index.php?webtag=MOI&msg=8814.140<br />
<br />
Additional command dirs - Add moi.ini setting under [Commands] AdditionalCommandsDirs= which can be set to a semi-colon delimited list of additional directories to look for commands, in addition to the built in commands and appdata commands.<br><br />
[Commands]<br><br />
AdditionalCommandsDirs=c:\path1;c:\path2<br><br />
Requested on the forum by Hamish here: http://moi3d.com/forum/messages.php?webtag=MOI&msg=8814.97<br />
<br />
FBX export vertex colors - Add option in moi.ini for writing vertex colors to FBX exports. Can be enabled by setting:<br><br />
[FBX Export]<br><br />
WriteVertexColors=y<br><br />
Requested by Stefan in the forum here: http://moi3d.com/forum/index.php?webtag=MOI&msg=8853.5<br />
<br />
Graphics API override - Add moi.ini option for which graphics API to use. <br />
On Windows or Linux/Wine a specific render engine can be controlled by a setting in moi.ini, under the [View] section, GraphicsAPI key:<br><br />
[View]<br><br />
GraphicsAPI=Direct3D11<br><br />
or<br><br />
GraphicsAPI=OpenGL<br />
<br />
Startup working directory - Add moi.ini options for setting the initial working directory on startup.<br><br />
[Settings]<br><br />
StartupWorkingDirectory=<br><br />
SaveWorkingDirectoryAtExit=n<br><br />
Requested by Marc in the forum here: http://moi3d.com/forum/index.php?webtag=MOI&msg=8814.88<br />
<br />
Trackpad as mouse wheel - Add setting in moi.ini for making Mac trackpad scroll used as a mouse wheel zoom as older MoI versions did.<br><br />
[MultiTouch]<br><br />
UseTrackpadScrollAsMouseWheel=y<br><br />
Requested by Marc in the forum here: http://moi3d.com/forum/index.php?webtag=MOI&msg=8814.88<br />
<br />
<br />
<br />
== Jun-6-2018 ==<br />
<br />
[http://moi3d.com/forum/index.php?webtag=MOI&msg=8966.1 Forum announcement]<br />
<br />
New stuff:<br />
<br />
Major overhaul of STEP/IGES/SAT importing.<br />
<br />
These imports will now no longer block the main thread so it won't look like MoI is frozen while it is loading a big file.<br />
<br />
The loading happens in 2 phases, first an initial scan of the file that doesn't do too much work except logging the structure of where objects are located. Then the next heavier phase of processing the objects will make use of multiple CPU cores for a major speed increase. So there should be a very substantial performance increase in loading large STEP, IGES, or SAT files in this version.<br />
<br />
Also the HarmonyWare libraries used for working with these formats have now been updated from version 1.7.11 to the latest 2.0.8 release and there are a lot of bug fixes from that. A notable one is that some incorrect positioning of instances should be good now. Also some other fixes on MoI's side should make for colors coming through from STEP files that were previously missed.<br />
<br />
It would be cool to hear how the new multi-core enabled importer performs on some big files compared to MoI v3!<br />
<br />
Also please let me know if you see any new problems with any particular imports. If you do please try to send the file to me at moi@moi3d.com so I can test with it over here, I will keep any files confidential.<br />
<br />
<br />
Other things:<br />
<br />
Window selection Mac - Fix for sluggish selection window dragging reported by James through e-mail.<br />
<br />
Properties panel size display - Adjusted the quick size calculation for the properties panel to hopefully increase accuracy a little.<br />
<br />
Properties panel - Report closed edges as a distinct object type. Fixes an issue of inconsistent behavior between curves and edges reported through e-mail by Scott.<br />
<br />
Edit frame grip size - Added option in moi.ini for setting edit frame grip handle pixel size, so it can be adjusted for higher res displays,<br />
Requested by Barry in the forum here: http://moi3d.com/forum/index.php?webtag=MOI&msg=8960.1<br><br />
[View]<br><br />
EditFrameGripPixelSize=24<br />
<br />
DisableOnSrfInOrtho setting - Added scripting access to DisableOnSrfInOrtho setting so it can be toggled at runtime under moi.drawingAids.disableOnSrfInOrtho . Requested on the forum by immortalx here: http://moi3d.com/forum/index.php?webtag=MOI&msg=8947.1<br />
<br />
NURBS Export RotateZUpToYUp option - Added option in moi.ini for option for exporting STEP/IGES/SAT formats to rotate the export to a Y up coordinate system.<br><br />
[NURBS Export]<br><br />
RotateZUpToYUp=y<br />
<br />
Update viewport right click - Don't push Cancel buttons with a viewport right click, it's too easy to accidentally cancel a long file import or things like that.<br />
<br />
<br />
<br />
== Aug-28-2018 ==<br />
<br />
[http://moi3d.com/forum/index.php?webtag=MOI&msg=9044.1 Forum announcement]<br />
<br />
The main focus for this beta is performance enhancements.<br />
<br />
3DM files will now use multiple CPU cores for loading so large files should load significantly faster and show a progress bar.<br />
<br />
Also the display engine has been enhanced to take advantage of modern GPUs - display data is now cached in the GPU's VRAM which should result in faster redraw speed for large files.<br />
<br />
<br />
Other bug fixes and changes:<br />
<br />
Mac version multiple windows - Add "Window" menu to Mac version top menu. Shows all open files and allows switching between them easier. Also support Cmd+Tilde (Cmd+~) and Cmd+Shift+Tilde for switching to next/prev window.<br />
<br />
Construction line bug fix - Fix construction line creation bug reported by jopo in the forum here:<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=8966.53<br />
<br />
Object drag bug fix - fix bug for moving the mouse over another viewport when dragging objects. Reported by Burr on the forum here:<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=9016.1<br />
<br />
Mac AMD performance - fix problem with default buffer location with OpenGL on some AMD cards that was causing slow redraws on some machines like iMac pro.<br />
<br />
Updated Mac file open behavior. To match the Mac document based application framework behavior, if a file is opened by drag/drop or by double-clicking on the desktop icon do not open a new window for it if there is an existing window with it already open.<br />
<br />
3DS Max zoom compatibility - Added moi.ini option for Alt+Ctrl+MMB zoom for 3DS Max compatibility. Can be set under:<br><br />
[View]<br><br />
AltCtrlMMBZoom=y<br><br />
<br />
Object snap labels on left side - Add moi.ini option to make object snap labels shown to the left of the target point, can be useful if you're drawing directly on a screen such as with a Cintiq screen. Can be set in moi.ini under:<br><br />
[Drawing Aids]<br><br />
ShowObjectSnapLabelToLeft=n<br><br />
<br />
Shortcut keys update - On Windows if there is a [Shortcut Keys Mac] section of the moi.ini file, read and write shortcuts from there so you can copy the moi.ini file over from Mac to Windows. Fixes issue reported on the forum by Matt here:<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=8970.1<br />
<br />
STEP import bug fix - Fixed import bug for file MF2018.STEP getting stuck at 36%, reported on the forum by Marco here:<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=8966.9<br><br />
Also fixed a different STEP import bug reported by Eric Bucy through e-mail.<br />
<br />
Fixed file loader UI bug - Fix bug where main window would not maximize properly when trying to show progress bar UI before main window was initially displayed, such as when MoI launched by double clicking a STP file. Fixes bug reported in the forum by OSTexo here:<br><br />
OSTexo http://moi3d.com/forum/index.php?webtag=MOI&msg=8966.40<br />
<br />
File notes - Add notes property that is saved to and loaded from .3dm files. Can be accessed by setting up a shortcut key with:<br><br />
script: moi.ui.createDialog( 'moi://ui/NotesDialog.htm', 'resizeable' );<br />
<br />
Viewport right click option - Add option for v3 behavior of right clicking in a viewport working as a shortcut for pushing the Cancel button when a command only has Cancel and not Done. Can be set in moi.ini under:<br><br />
[View]<br />
DoRightClickCancel=y<br />
<br />
Add new appdata directory option - MoI will now look for an appdata directory that has been created alongside "commands", "ui", etc... and if found will use that location as the appdata folder, to make it possible to store everything within a single directory.<br />
<br />
Add moi.ini setting for selection hit test radius<br><br />
[View]<br><br />
SelectionHitTestRadius=12<br><br />
<br />
Scene browser scripting - Added script access to scene browser items so it is possible to make a startup script that expands sections on program startup. To do that put the following in a .js file in your Moi appdata startup folder:<br><br />
var items = moi.ui.sceneBrowser.rootItems;<br><br />
for ( var i = 0; i &lt; items.length; ++i )<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;items[i].expanded = true;<br />
<br />
<br />
== Oct-17-2018 ==<br />
<br />
[http://moi3d.com/forum/index.php?webtag=MOI&msg=9100.1 Forum announcement]<br />
<br />
The main focus for this beta is a polygon sub-d surface to NURBS conversion method, available on the side pane under SubD > Create > From file. This allows you to open an .obj file that contains a sub-d polygon cage and have it converted to a high quality NURBS object in MoI.<br />
<br />
Some other stuff:<br />
<br />
Settings for page size are now available in PDF/AI exports.<br />
<br />
Fixed crash bug when modifying display mesh angle.<br />
<br />
Updated STEP export to fix problem with object names not coming through to SolidWorks, Fusion360 and KeyShot.<br />
<br />
Added moi.ini option to set current file name with foreign file types. In moi.ini under [Settings] SetNameWhenOpeningAllFileTypes=y When set, the current file name is set for all file opens not just .3dm files. Requested by Alex on the forum here: http://moi3d.com/forum/index.php?webtag=MOI&msg=9044.41<br />
<br />
Updated DXF export to allow the dialog to be suppressed and options set by script. Parameters that can be set are:<br><br />
// DXF export function parameter options:<br><br />
//<br><br />
// NoUI=true<br><br />
// ExportType=2d | 3d<br><br />
// ProjectionView=top | 3d | front | right<br><br />
// WriteCurvesAs=splines | cubicsplines | polylines<br><br />
// PolylineAngleDegrees=10.0<br><br />
// UseSimpleEntities=true<br><br />
// NumDecimalPlaces=12<br><br />
//<br><br />
// GenerateHiddenLines=false<br><br />
// HiddenLineLayerMode=fromstyle | custom<br><br />
// HiddenLineLayerName=Hidden lines (layer name to use when layer mode = custom)<br><br />
// IgnoreTangentEdges=false<br><br />
// Resolution=25.0<br><br />
<br />
<br />
== Feb-27-2019 ==<br />
<br />
[http://moi3d.com/forum/messages.php?webtag=MOI&msg=9266.1 Forum announcement]<br />
<br />
New stuff:<br />
<br />
Numerous fixes for SubD import crashes and translation issues.<br />
<br />
Fix for SubD imports on objects of small scale.<br />
<br />
Fix for SubD imports with meshes that have multiple volumes that partially overlap each other. Previously these could sometimes not get separated into different solids properly.<br />
<br />
Update SubD import to read materials from the .obj file and make Styles from them in MoI. Also patch combining will pay attention to material assignments<br />
so patches will not get combined across different materials. Can be disabled under Options > Import/Export > SubD import options > "Use materials" checkbox.<br />
<br />
Add SubD import option for either fewer patches but with denser surface control points, or more patches around extraordinary vertices but with fewer surface<br />
control points in regular areas of the mesh. Set under Options > Import/Export > SubD import options > "Patch type".<br />
<br />
Update multiple selection - Add option for doing multiple selection only when shift key is down. Options > General > Multiple selection: "Always" or "Only when Shift is down".<br />
<br />
Fix cylinder boolean union bug. There was a bug with combining cylinders in boolean union when the cylinders had opposite axis directions. This was the cause of some occasional mysterious missing fillets where the fillet surface was ending up displaced some distance away from the trim boundaries.<br />
<br />
Fix a sporadic crash in Chamfer reported through e-mail by Sebastian Bielecki.<br />
<br />
Fix crash in center object snap after copy/pasting an arc edge curve.<br />
<br />
Update tesselator - fix degenerate span display bug. Fixes bug in mesher for making display meshes on surfaces with nearly degenerate spans. Fixes a bug reported through PM by BarryH.<br />
<br />
Add option for scaling STL export to target unit system. Under Options > Import/Export > STL Options > "Export units conversion".<br />
<br />
Update curve filleting - Enable "Constant distance" fillet mode for curves, currently only works for line segments.<br />
<br />
Fix 3DConnexion buttons bug where undo/redo on space mouse button presses was not working, reported by Ivan in the forum here: http://moi3d.com/forum/index.php?webtag=MOI&msg=9130.1<br />
<br />
Update command parameter parsing. Allow quotes to control parameter parsing so values with spaces can be used, for example: ArrayDir mode="Extent, Count" . Fixes a problem reported on the forum by Bravlin here: http://moi3d.com/forum/index.php?webtag=MOI&msg=6087.75<br />
<br />
Update shortcut keys parameters - start and end scripts. Make it possible for shortcut keys to define parameters for oncommandstart="" and oncommandend="" for script to run at the start or end of the command. For example this shortcut will run a script when the line command ends to select it: line oncommandend="moi.geometryDatabase.selectLastCreated();"<br />
<br />
Update shortcut keys for file commands. Enable controlling the file dialog file type with keyboard shortcuts by adding a filetype= option in the shortcut key. For example a shortcut key with: Open filetype=igs will make the file dialog have the .igs file type active. Can be used with Open, SaveAs, Import, and Export commands. Requested in the forum by Peticel here: http://moi3d.com/forum/index.php?webtag=MOI&msg=9118.1<br />
<br />
Update command UI automation - ordering. Some UI events cause the command to finish, so to be able to control a command the ordering of the events needs to be controllable.<br />
Rework the UI event triggering so they are triggered in the order given in the command line parameters. This makes the following possible:<br><br />
extrude tapered draftangle=20 distanceinput=10<br><br />
Previously that didn't work because the distanceinput is earlier in the UI and so got triggered earlier and ended the command before tapered or draftangle could be processed.<br />
<br />
Fix properties panel line length editing bug reported through e-mail by Tim Hickox.<br />
<br />
Fix tolerance bug that could cause small sized objects to get mangled boundaries when joined, regression from v3.<br />
<br />
Fix IGES import joining regression - Make iges entity 128 surfaces join together if joining is enabled, regression from v3.<br />
<br />
Updated IGES import joining - allow T junctures to join instead of only simple matching endpoints only.<br />
<br />
Fix IGES import bug for some cases with edges on seams of closed surfaces. Fixes an IGES file sent through e-mail by Charles Ludeke.<br />
<br />
Fix excessive load time with STEP file that had a degenerate surface in it.<br />
<br />
Update license key file paths - Allow a path to moi_v3_license.key to be passed as a command line parameter or set as an environment variable<br />
like moi_v3_license.key=path . Requested by Mariusz in the forum here: http://moi3d.com/forum/index.php?webtag=MOI&msg=9106.1<br />
<br />
If straight snap snap angle is set to 0, disable x/y plane straight snap line snapping.<br />
<br />
Add warning if running on Mac case sensitive file system.<br />
<br />
Update file dialogs - Save and restore last used file dialog location on all platforms.<br />
<br />
Update file loader progress bar - Add full path as tooltip to file name label.<br />
<br />
Add option for limiting the number of CPU cores used by file loading. Can be set under: [Settings] FileLoaderThreadLimit=x<br />
<br />
Update scripting - exe command line args<br><br />
moi.getExecutableCommandLineArgs() - returns list of command line parameters for launching the executable.<br><br />
moi.geometryDatabase.initialFileToLoad - filename for initial file to load by executable command line parameter.<br />
<br />
Scripting - Add moi.command.currentCommandName property for getting the current running command name by script, or empty string if no command currently running. Requested by Bravlin on the forum here: http://moi3d.com/forum/index.php?webtag=MOI&msg=7238.61<br />
<br />
Update Scene Browser, Types > Edges and Types > Faces behavior. Don't show edges or faces of hidden breps unless shift is down. Makes it easier to turn edges on/off without hidden breps being shown. Requested through e-mail by Tim Hickox<br />
<br />
Update scene browser - Make sure scene browser is initialized before any startup script that wants to access it is run.<br />
<br />
Scene browser script access - Add more script access to SceneBrowser: sceneBrowser.objects, sceneBrowser.types, and sceneBrowser.styles to get the root item for those sections.<br><br />
Added methods to a scene browser item:<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;item.find('name') - will search all children and return an item with that name or null if none present.<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;item.alterStatus(mode,rightclick) - alter the status area of an item, that's the one with the eye icon. Mode can be one of 'show','hide','lock','unlock'. Optional boolean parameter for rightclick will make it behave like a right mouse button click.<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;item.select(mode,rightclick) - alter the selection dot of an item. Mode can be one of 'toggle','select','deselect','filteron','filteroff'. Optional boolean parameter for rightclick will make it behave like a right mouse button click.<br><br />
Here's an example that toggles the selection dot for the Blue item under styles: moi.ui.scenebrowser.styles.find('Blue').select('toggle');<br />
<br />
Fix selection redraw bug on static objects where objects could get stuck looking like they were selected in the Intersect, Project, Silhouette, Join, and Separate commands. Reported through e-mail by James Elliott.<br />
<br />
Fix bug in Add pt with rational curves, reported in the forum by Bravlin here: http://moi3d.com/forum/index.php?webtag=MOI&msg=9216.34<br />
<br />
Fix for wrong selection display on iMac with NVIDIA GeForce GT 750M 1024 MB - work around driver bug.<br />
<br />
Fix for mouse move events getting stacked up on some Mac machines.<br />
<br />
Fix .skp and .fbx format export with unicode file names on Mac. Exporting to .skp or .fbx formats with certain kinds certain kinds of extended characters in the filename would fail.<br />
<br />
Update filename display Mac - Fix bug where filenames with <> characters were being treated as html tags.<br />
<br />
Fix MRU file list Mac - Fixed bug where on Mac if a file had a \ in it, it would not persist to the MRU list properly.<br />
<br />
Fix Mac crash when exporting to .3ds format.<br />
<br />
Fix QtWebKit Ctrl/Meta flippage on Mac. Make the HTML event object use Ctrl for Ctrl and Cmd for Cmd instead of flipped on Mac.<br />
<br />
Turn off viewport display time that was previously always on.<br />
<br />
Update mouse wheel for node editor - dispatch wheel events to canvas elements.<br />
<br />
Fix bug in <moi:Select> control when the <moi:Select> element had keyboard focus when the command UI document was torn down. Fixes bug reported by Bravlin on the forum here: http://moi3d.com/forum/index.php?webtag=MOI&msg=952.31<br />
<br />
Add setting for allowing snap plane change in ortho:<br><br />
[Drawing Aids]<br><br />
AllowSnapPlaneChangeInOrtho=y<br><br />
When set the orientation picker will align to surfaces in ortho views, by default it only aligns to surfaces in the 3D view.<br />
<br />
Update viewport text - fallback fonts. Switch to a fallback font if the regular UI font does not contain glyphs that we are going to be using in the viewport. This enables stuff like Japanese text to render properly in the viewport even if the UI font has not been set to a font with Japanese glyphs in it.<br />
<br />
Update Wine hit testing BGRA textures. Add option to use BGRA for the texture format for off-screen rendering. Make it used by default when running under Wine. Hopefully will solve selection problems where hit test map had unexpected byte ordering on the propietary Nvidia driver, as reported by Ronnie Ashlock.<br />
<br />
Add option to use same color picker dialog as v3 on Windows. Can be set under<br><br />
[Color Dialog]<br><br />
UseV3ColorDialog=y<br><br />
Requested by Barry-H in the forum here: http://moi3d.com/forum/index.php?webtag=MOI&msg=9100.241<br />
<br />
Update scripting moi.view.resetAll() - Update moi.view.resetAll() to take an optional parameter. Can be one of:<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;'auto' - Do automatic toggle between selected or all.<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;'selected' - Only reset to selected objects.<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;'all' - Only reset to all objects.<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;'default' - Reset to default startup views, keeping reversed views (bottom/back/left).<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;'harddefault' - Reset to startup views and get rid of reversed views (bottom view will become top).<br><br />
Requested on the forum by arial here: http://moi3d.com/forum/index.php?webtag=MOI&msg=8123.39<br />
<br />
Update edit style shortcut. Make Ctrl+Left click on the style line in the properties panel also work as a style edit shortcut in addition to right-click. Requested by shane in the forum here: http://moi3d.com/forum/index.php?webtag=MOI&msg=9245.5<br />
<br />
Add moi.ini option for window select behavior.<br><br />
[Selection]<br><br />
WindowSelectMode_Combo_Intersect_Contained=Combo<br><br />
Can be one of "Combo", "Intersect", or "Contained".<br />
<br />
Update mesh export - allow generating empty mesh files when saving to OBJ, STL, 3DS, LWO, FBX, or SKP mesh formats. Requested by Mikael Sundell for pipeline integration.<br />
<br />
<br />
== Oct-10-2019 ==<br />
<br />
[http://moi3d.com/forum/index.php?webtag=MOI&msg=9526.1 Forum announcement]<br />
<br />
The primary focus for this release is a new detailed object properties dialog and new annotation/dimension tools on the "Dim" tab in the side pane.<br />
<br />
The new extended properties dialog is triggered by the "Details..." button in the Properties Panel here:<br />
<br />
http://moi3d.com/forum/get_attachment.php?webtag=MOI&hash=f48bc5937a8f8647858ee122f26fd746&filename=detailed_object_properties1.png<br />
<br />
The Type: section of the detailed object properties dialog will give some additional information about the object type:<br />
<br />
http://moi3d.com/forum/get_attachment.php?webtag=MOI&hash=f523480b2b9504254b2208f7bdadf912&filename=detailed_object_properties2.png<br />
<br />
For curves it will report if it is an open curve or closed curve, whether it has the shape of a line, polyline, circle, arc, ellipse, elliptical arc, whether it is planar and the number of segments in the curve.<br />
<br />
For surface/solid objects it will report if it is a solid, open joined surface, or open individual surface, if it is a planar surface, the number of joined edges, number of naked edges, and number of faces.<br />
<br />
For edges it will report open, closed, joined, naked, line, circle, ellipse, elliptical arc, and planar.<br />
<br />
For a face selected it will report if it is a planar face.<br />
<br />
For an annotation selected it will report if it is a linear dimension, radial dimension, angular dimension, leader, or annotation text.<br />
<br />
When multiple objects are selected it will make a combined report like this:<br />
<br />
http://moi3d.com/forum/get_attachment.php?webtag=MOI&hash=a41d725c0dbdec497aebe4b79123c060&filename=detailed_object_properties3.png<br />
<br />
The type labels can be clicked on to filter the selection down to just the objects that match that label:<br />
<br />
http://moi3d.com/forum/get_attachment.php?webtag=MOI&hash=2dfca899ad8b98dc077ef0274ccf96d7&filename=detailed_object_properties4.png<br />
<br />
You can also hold down the shift key which will allow you to click multiple labels and the filtering will be triggered when you release the shift key. Holding down the Ctrl key while clicking on a label will remove its objects from the selection.<br />
<br />
Lower down on the dialog there are sections for Curve properties, Solid or surface properties, and Annotation properties if any of those types of objects are selected:<br />
<br />
http://moi3d.com/forum/get_attachment.php?webtag=MOI&hash=a2c2884805bea74d3f1008fa82fa241f&filename=detailed_object_properties5.png<br />
<br />
There you can calculate the length of curves, the surface area or volume of a surface or solid, and adjust properties for annotation objects.<br />
<br />
When you click the "Calc" button to calculate a value the button will be replaced with a numeric value and a small "Copy" icon will appear next to it. You can click on the value to copy it to the system clipboard.<br />
<br />
<br />
The other major new feature area are annotation objects which can be used to add dimensions and text to your model to use for documentation.<br />
<br />
These are added by 7 new commands in the Dim tab on the side pane here:<br />
<br />
http://moi3d.com/forum/get_attachment.php?webtag=MOI&hash=3ac8aa861ce0381ee8a301bb1f7eda82&filename=dim_tab.png<br />
<br />
The DimHorizontal command creates a linear dimension going in the x-axis direction of the construction plane:<br><br />
http://moi3d.com/forum/get_attachment.php?webtag=MOI&hash=adade4b11952793ad9e912e04ac1ee9d&filename=DimHorizontal.png<br />
<br />
The DimVertical command creates a linear dimension going in the y-axis direction of the construction plane:<br><br />
http://moi3d.com/forum/get_attachment.php?webtag=MOI&hash=c594a4d2c93cbc4b594fcc9482ab43ca&filename=DimVertical.png<br />
<br />
The DimAligned command creates a linear dimension going in any direction on the construction plane:<br><br />
http://moi3d.com/forum/get_attachment.php?webtag=MOI&hash=794f907b2a85dfc93ea5462f919680fa&filename=DimAligned.png<br />
<br />
All 3 of the linear dimension commands have a "From object" button in their command options which you can trigger to take the start and end point of a curve as the first 2 points of the dimension.<br />
<br />
The DimRadius command creates a radial dimension on a circle or arc curve:<br><br />
http://moi3d.com/forum/get_attachment.php?webtag=MOI&hash=3fe29174d3a44247c189f098635089bf&filename=DimRadius.png<br />
<br />
The DimAngle command creates an angular dimension on the construction plane. There is a "From lines" button in its command options which will allow you to select 2 line objects instead of picking points.<br><br />
http://moi3d.com/forum/get_attachment.php?webtag=MOI&hash=899daa66d11473a80215ced67ec3707f&filename=DimAngle.png<br />
<br />
The Leader command creates a leader object which is a text label with an arrow.<br><br />
http://moi3d.com/forum/get_attachment.php?webtag=MOI&hash=3e412e15007311c6f216db34d71e1907&filename=Leader.jpg<br />
<br />
The AnnotationText command creates an annotation text object which is a text box by itself, no arrows.<br />
<br />
Annotations are currently only saved to and from .3dm files. Saving them to DXF and PDF/AI files will be upcoming.<br />
<br />
There is an option in moi.ini for changing the display appearance of arrowheads in annotations by disabling mitered arrowhead tips:<br><br />
[Annotations]<br><br />
MiterArrowheads=y<br />
<br />
<br />
Other bug fixes and updates:<br />
<br />
Update FBX export - FBX version, object names, and materials. Add option for which FBX version to use under Options dialog &gt; Import/Export &gt; FBX options &gt; FBX version. Object names are now written to the FBX files instead of only generic "object1", "object2", ... names and styles are now written as materials in the FBX export. Writing materials can be disabled in moi.ini under [FBX Export] WriteMaterials=n<br />
<br />
Added SubD import option for open boundaries behavior under Options &gt; Import/Export &gt; SubD import options. Can be one of "Open boundaries: Keep corners" or "Open boundaries: Rounded". The default is "Keep corners" as per the discussion on the forum here:<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=9274.1<br><br />
It can be set to "Open boundaries: Rounded" to return to the previous beta's behavior at open boundary areas.<br />
<br />
Update DXF/PDF/AI hidden line layer controls. Add an optional prefix and/or suffix to be added to the style name when generating a 2D hidden line drawing to DXF/PDF/AI formats. Requested on the forum by miquik here:<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=9418.1<br />
<br />
Update view tabs - enable right click to get reverse views. Requested by Juraj in the forum here:<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=9473.10<br />
<br />
Add option in moi.ini for zooming using Shift+MMB:<br><br />
[View]<br><br />
ShiftMMBZoom=y<br />
<br />
Update file dialog filters. Make "All supported files" the first item in the file open filter list on both Windows and Mac (previously it was only on Mac). So that will be the default filter when the file dialog is first opened. This can be reverted to the previous behavior by a setting in moi.ini :<br><br />
[FileDialog]<br><br />
AllSupportedAtBottom=y<br><br />
Requested by agonyii in the discussion forum here:<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=9387.1<br />
<br />
Add moi.ini option for LWO export to not write styles as materials/surfaces in the LWO file.<br><br />
[LWO]<br><br />
WriteMaterialAssignments=y<br />
<br />
Fix bug with meshing dialog settings not being saved. Reported by stefan in the newsgroup here:<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=9266.51<br />
<br />
Fix Options dialog sub dialogs not displaying in full screen mode on macOS Mojave. Simplify dialog window z-ordering on Mac to avoid Mojave bug and hopefully be more resilient against any future Mac child window behavior changes. Reported by Martin in the forum here:<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=9443.1<br />
<br />
Fix improper mouse coordinate scaling on Mac w/Retina. Fix bug with longer distance delay before rotate/pan engages with V4 compared to V3, reported on the forum by Nis here:<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=9266.200<br />
<br />
Fix PDF export crash bug reported on the forum by Mip here:<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=9266.144<br />
<br />
Fix crash with some extended combination keystrokes such as Ctrl+Alt+Win+Numpad1 (QTBUG-36061). Fixes a crash bug reported through e-mail by Mark Tomlinson.<br />
<br />
Fixed a crash in display meshing with a file reported through e-mail by Bodo-Lutz.<br />
<br />
Fix crash in node editor revolve with small angle value, reported by Pilou in the forum here:<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=9476.119<br />
<br />
Updated HarmonyWare libs for STEP, SAT, and IGES file I/O from version 2.1.0 to 2.1.4, various bug fixes.<br />
<br />
Update STEP import/export - face colors. Support per-face colors for STEP file import and export. Fixes STEP import color bug reported on the forum by Fran6 here:<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=9339.4<br />
<br />
Fix 3DM import bug with incorrect circle orientation when reading 3DM files from CAD Exchanger. Fixes mangled import of mould.quadlobe.toy reported on the forum by LarryV here:<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=9266.164<br />
<br />
Update Construct &gt; Curve &gt; Isect "Curve from 2 views". Allow lines to be used as input for curve from 2 views, requested by Przemas in the forum here:<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=9440.1<br />
<br />
Update Trim - "stencil cut" options. Add options to Edit &gt; Trim for deleting the cutting objects and for having a joined together result with "keep all" instead of always separarting into pieces. Requested on the forum by Przemas here:<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=9436.1<br />
<br />
Fixed bug where left-click on style line of properties panel behaved the same as the right click shortcut for editing the style rather than putting up the style picker menu. Reported in the forum by Ralf here:<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=9266.22<br />
<br />
Update selection texture readback on Wine - test for Nvidia driver bug with red/blue bytes swapped and compensate. Also add calls to glFinish() on Wine to try and help avoid some other Nvidia driver bugs on Linux/Wine.<br />
<br />
Update command object model for properties undo. Add moi.command.addSelectedObjectsStateUndoUnit(); that can be called by a command that only modifies properties and doesn't add or delete objects, to get undo support.<br />
<br />
Add script properties to Face objects:<br><br />
face.domainMin : Property that returns u,v coordinate of the lower left of the surface's parameter range.<br><br />
face.domainMax : Property that returns u,v coordinate of the upper right of the surface's parameter range.<br><br />
face.evaluatePoint( uv, u_from_left, v_from_left ) : Function that evaluates a uv parameter value and returns a 3D point.<br><br />
face.evaluateNormal( uv ) : Function that evaluates a uv parameter value and returns a normal vector.<br><br />
face.evaluate1stDerivatives( uv, u_from_left, v_from_left ) : Function that evaluates a uv parameter value and returns first derivatives as a list containing [pt, du, dv, duv].<br><br />
face.evaluate2ndDerivatives( uv, u_from_left, v_from_left ) : Function that evaluates a uv parameter value and returns first and second derivatives as a list containing [pt, du, dv, duv, duu, dvv].<br><br />
face.isPlanar : Property that returns true if the surface is planar.<br><br />
face.planarFrame : Property that returns a coordinate from for a planar surface. Only valid if isPlanar returns true.<br><br />
face.isOnPlane( frame ) : Function that returns true if the surface is planar and is on the given coordinate frame's x/y plane.<br><br />
face.isOnParallelPlane( frame ) : Function that returns true if the surface is planar and is on a plane parallel to the given coordinate frame's x/y plane.<br><br />
<br />
<br />
== Jan-22-2020 ==<br />
<br />
[http://moi3d.com/forum/index.php?webtag=MOI&msg=9660.1 Forum announcement]<br />
<br />
New stuff:<br />
<br />
Added dimension property preset system for controlling initial properties of newly drawn dimensions.<br><br />
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 also create additional presets for project-specific settings.<br><br />
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.<br />
<br />
Implement sizing of the scene browser by dragging on its edge.<br />
<br />
Update dimensions arrowheads - Add option to position arrowheads to the outside, for linear dimension and angular dimension.<br />
<br />
Enable turning on edit points for annotations. This can be used to edit dimensions and also to reposition dimension text.<br><br />
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.<br />
<br />
Add circumference field. Add a circumference field in addition to radius/diameter for circle picking.<br><br />
Affects ArcTangent, Circle, CircleTangent, Cone, Cylinder, and Sphere commands. <br />
<br />
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.<br />
<br />
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.<br />
<br />
Add snap points on angular dimension objects<br />
<br />
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.<br />
<br />
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<br />
<br />
<br />
Fixed bug with dimension text getting distorted when coordinate values were larger than 2500.0<br />
<br />
Fix OBJ sub-d conversion crash when reading materials that had texture maps set up.<br><br />
Fixes a crash reported through e-mail by Phil Nolan.<br />
<br />
Fix sweep bug. History update with editing control points for Sweep was making unexpected results.<br><br />
Fixes bug reported in the forum by nameless here: http://moi3d.com/forum/index.php?webtag=MOI&msg=9526.196<br />
<br />
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.<br />
<br />
Fix bug with circle Tan Tan Radius reported through e-mail by Vladimir.<br />
<br />
Fix annotation window select bug - Leaders without any text were not working with window selection.<br />
<br />
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<br><br />
Fixes a bug reported in the forum by Axel here: http://moi3d.com/forum/index.php?webtag=MOI&msg=9615.1<br />
<br />
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.<br />
<br />
Update edge hit testing - Fix dead zone around outside of object with selection filters active. Fixes bug reported on the forum by Pior here:<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=8435.42<br />
<br />
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.<br />
<br />
Fixed annotation font picking bug that would cause the font size to grow to larger values on Mac just by opening the font dialog.<br />
<br />
Update detailed properties dialog styles. When multiple styles selected, list the styles.<br />
<br />
Fix annotation objects bounding box bug which caused Transform > Align to behave strangely with annotation objects. Reported by OSTexo on the forum here:<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=9526.11<br />
<br />
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:<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=9526.85<br />
<br />
Fix bug with Display: Wireframe mode on Meshing options dialog box not working. Reported on the forum by Schbeurd here:<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=9526.148<br />
<br />
Fix curve offset bug - Curve offset through point wasn't working correctly if closest point was at a tangent discontinuity.<br />
<br />
Show error dialog if trying to load a Rhino v6 or higher .3dm file.<br />
<br />
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:<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=9526.76<br />
<br />
Fixed bug where esc key could prevent hit testing from being reset on curve used for DimRadius. Reported through e-mail by Vladimir<br />
<br />
Update mesh dialog - Don't restore window corner position saved in moi.ini if the corner is not on a visible screen.<br />
<br />
Revert IGES import change - only use simple joins, not any vertex/edge splitting. Fixes regression reported on the forum by Will here:<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=9526.220<br />
<br />
Add moi.ini setting for showing grid in ortho views only, not the 3D view.<br><br />
[Grid]<br><br />
ShowGridInOrthoViewsOnly=y<br><br />
<br />
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 .<br><br />
Requested by Lestatdelc in the forum here:<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=9526.72<br />
<br />
Add moi.ini setting to disable selection edge flashing.<br><br />
[Selection]<br><br />
DisableSelectionEdgeFlash=n<br><br />
If set to =y then the edge flash feedback when selecting faces or breps will be disabled. Requested by Pior in the forum here:<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=8435.36<br />
<br />
Add moi.ini options for disabling preselection highlighting. In moi.ini under:<br><br />
[Selection]<br><br />
DisablePreselectionHighlighting=n<br><br />
DisablePreselectionHighlightingExceptCurves=n<br><br />
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:<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=8435.28<br />
<br />
Add moi.ini option to export FBX names as ascii [FBX Export] ConvertObjectNamesToAscii=y . Requested on the forum by Sven here:<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=9526.115<br />
<br />
<br />
scripting:<br />
<br />
Update view.setCameraAndTarget() function. Take an optional 3rd parameter of an "up" direction vector.<br />
<br />
Add script methods for dropping points:<br><br />
&nbsp;&nbsp;curve.dropPoint( pt ) - returns curve parameter value of closest point on the curve to the given 3D point.<br><br />
&nbsp;&nbsp;curvesegment.dropPoint( pt ) - returns curve parameter value of closest point on the curve segment to the given 3D point.<br><br />
&nbsp;&nbsp;face.dropPoint( pt ); - returns 2D uv coordinate point of closest point on the face to the given 3D point.<br><br />
&nbsp;&nbsp;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.<br><br />
<br />
Updated face.planarFrame() method for analytic planes to use the same x/y axis alignment that point picking snap plane uses.<br />
<br />
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.<br />
<br />
Add getEdgeIsoType script method<br><br />
Takes a parameter of which face to consider, an edge can be shared between 2 faces.<br><br />
var Iso = EdgeCrv.getEdgeIsoType( Face );<br><br />
Return value:<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;-1 : Edge is not an isocurve of the given face.<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;0 : Edge is an isocurve of the given face, going in the U direction.<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;1 : Edge is an isocurve of the given face, going in the V direction.<br />
<br />
<br />
== Sep-10-2020 ==<br />
<br />
[http://moi3d.com/forum/index.php?webtag=MOI&msg=9942.1 Forum announcement]<br />
<br />
Still not quite finished but really close! Exporting dimensions to PDF/AI formats is still in progress and almost there but I needed to release this new beta now because the current beta expires tomorrow. It has been quite a while since the last beta, please let me know if you see any new bugs surface in this release. It won't be much longer before v4 will be wrapped up.<br />
<br />
New stuff:<br />
<br />
Updated DXF - support import/export of dimension entities.<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;Import of TEXT, MTEXT, LEADER, and DIMENSION (linear, angular, radius/diameter sub types) is now supported. MoI will export dimensions to MTEXT, LEADER, and DIMENSION enties.<br />
<br />
Update annotations, add model units scaling behavior.<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;There is a new option for annotation behavior under Details > Annotation properties > "Scaling:" which has options for "Scaling: By screen size" or "Scaling: By model units".<br />
<br />
&nbsp;&nbsp;&nbsp;&nbsp;Scaling: "By screen size" works the same as the earlier v4 betas where text and arrowheads stay the same size on screen independent from the current zoom level.<br />
<br />
&nbsp;&nbsp;&nbsp;&nbsp;Scaling: "By model units" is a new option that makes the text and arrowheads to behave the same as geometry, where it is fixed at a certain unit size (given by the Height: field just after it) and will display larger or smaller when you zoom in and out. This option gives better compatibility with other CAD programs since almost all other programs work this way. When you import dimensions from DXF or from a 3DM file created in Rhino they will default to using this method so that things like title blocks where there are lines or other geometry making a table with text inside it will work as expected.<br />
<br />
Finished the AnnotationText and Leader command dialogs.<br />
<br />
Updated show points for dimension leader. Allow delete of selected edit points for leader objects.<br />
<br />
Handle file write errors - an error dialog will show now on file write failures like if the system ran out of disk space or permission denied.<br />
<br />
3DConnexion updates:<br><br />
&nbsp;&nbsp;&nbsp;&nbsp; - Updated 3dx default speed on Windows. On Windows 3dx translation and rotation speed was too fast, implement same default speed as Mac.<br><br />
&nbsp;&nbsp;&nbsp;&nbsp; - Add "Reverse roll" setting in Options dialog under Options > View > Rotate/Pan/Zoom options > 3DConnexion options. Requested by Fred in the forum here:<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;http://moi3d.com/forum/index.php?webtag=MOI&msg=9660.30<br><br />
&nbsp;&nbsp;&nbsp;&nbsp; - Also added individual settings for reversing twist or tilt in moi.ini, under:<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;[3Dconnexion]<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;&lt;...&gt;<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;ReverseTwist=y<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;ReverseTilt=y<br />
<br />
Update SaveAs to STEP/IGES/SAT formats for hidden objects.<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;By default don't write hidden objects to STEP/IGES/SAT formats when doing a SaveAs, unless turned on in moi.ini under:<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;[NURBS Export]<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;WriteBlankedObjects=y<br><br />
<br />
&nbsp;&nbsp;&nbsp;&nbsp;Also fixed regression in v4 where the blanked flag for hidden objects was not being set on IGES and SAT export.<br />
<br />
Update History<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;Enable face extrudes and the Rebuild command to trigger history updates.<br />
<br />
Curve offset overhaul - Improve curve offset robustness:<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;1 - when extending a line make a new analytic line as the result and use an analytic line/line intersection when possible for more accuracy.<br><br />
<br />
&nbsp;&nbsp;&nbsp;&nbsp;2 - Update how convex corner processing is done to avoid getting little loops which could confuse trim classification and were not getting trimmed out with shallow angle polylines as reported on the forum by Yanik here:<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;http://moi3d.com/forum/index.php?webtag=MOI&msg=9660.47<br />
<br />
&nbsp;&nbsp;&nbsp;&nbsp;3 - Do a better job of selecting intersections and screening out wild results from G2 reflection type extension. Should eliminate crazy looping extensions.<br />
<br />
Update grid axis display colors<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;Add in Z axis color option under Options > Grid. Grid axis lines are now colored according to their 3D orientation, so for example if you set the Z axis color to blue, then the vertical axis line in the front view will be colored blue. Previously the grid axis lines were colored the same in all viewports. You can re-enable that previous way by a setting in moi.ini :<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;[Grid]<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;<...><br><br />
&nbsp;&nbsp;&nbsp;&nbsp;UseOldStyleGridAxisColors=y<br />
<br />
&nbsp;&nbsp;&nbsp;&nbsp;Also added in an option for displaying the z axis grid line in the 3D view, under Options > Grid > "Show grid z axis in 3D view" checkbox.<br />
<br />
Update IGES export<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;Add an option under Options > Import/Export > IGES options > "Write solids as" for writing out solids as either an IGES type 186 "Manifold Solid B-Rep" entity or whether to write them as individual separate surfaces as MoI v3 and earlier always did.<br />
<br />
Update Draw solid > Text command - font styles<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;Add a Style: option to the Draw solid > Text command to make it possible to access styles of the font other than bold/italic. Requested on the forum by Javier here:<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;http://moi3d.com/forum/index.php?webtag=MOI&msg=8766.1<br />
<br />
Update error message when command not found.<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;Pop up a "command not found" dialog instead of a script exception dialog if trying to exec a command that was not found in any command folder.<br />
<br />
Update Help > About dialog<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;Add links for showing license keys and EULA from Help > About dialog. The license key dialog also has an option to clear out license keys.<br />
<br />
Detailed object properties dialog<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;Implement undo for annotation property changes in detailed object properties dialog.<br />
<br />
Update detailed properties panel types report<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;Add reports for all curves, all edges, and all brep edges if there is a mix of different types so there is one label that can be targeted for grabbing all edges or all curves instead of needing to shift+click on both "Open curves" and "Closed curves" for example.<br />
<br />
Add scale factor option for SubD import, in moi.ini<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;[SubD Import]<br />
&nbsp;&nbsp;&nbsp;&nbsp;ScaleFactor=1.0<br />
&nbsp;&nbsp;&nbsp;&nbsp;requested by Tudor in the forum here:<br />
&nbsp;&nbsp;&nbsp;&nbsp;http://moi3d.com/forum/index.php?webtag=MOI&msg=8665.109<br />
<br />
Update annotations bounding size<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;Don't include annotations in the bounding size for the edit frame or the properties panel, unless only annotations are selected.<br />
<br />
&nbsp;&nbsp;&nbsp;&nbsp;There is a moi.ini option to include annotations always in these sizes:<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;[Annotations] IncludeAnnotationsInBoundingBox=y<br><br />
&nbsp;&nbsp;&nbsp;&nbsp; <br />
&nbsp;&nbsp;&nbsp;&nbsp;Discussed in the forum here:<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;http://moi3d.com/forum/index.php?webtag=MOI&msg=9526.30<br />
&nbsp;&nbsp;&nbsp;&nbsp;<br />
Update persistence of "Mesh angle" option.<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;On startup, clamp the value for Options > View > Meshing parameters > Mesh angle to be between 10 and 45 degrees. It can be set lower by a startup script.<br />
<br />
Update annotation text display - substitution fonts<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;Enable use of substitution fonts in annotation text rendering. This will automatically switch to a fallback font if the current font does not have glyphs for unicode text characters being displayed.<br />
<br />
Update sub-d import<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;Use mesh object name in sub-d obj file conversion, and merge styles with the same names and colors. Requested in the forum by pafurijaz here:<br />
&nbsp;&nbsp;&nbsp;&nbsp;http://moi3d.com/forum/index.php?webtag=MOI&msg=9660.142<br />
<br />
Update edit styles dialog.<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;Show gray text on styles with nothing assigned to them same as the scene browser. Requested by pafurijaz in the forum here:<br />
&nbsp;&nbsp;&nbsp;&nbsp;http://moi3d.com/forum/index.php?webtag=MOI&msg=9660.148<br />
<br />
Update object dragging<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;Option for disabling object dragging so clicking on objects will only do selections and not any drags.Set under moi.ini under:<br />
&nbsp;&nbsp;&nbsp;&nbsp;[Selection]<br />
&nbsp;&nbsp;&nbsp;&nbsp;<...>'<br />
&nbsp;&nbsp;&nbsp;&nbsp;DisableObjectDrag=y<br />
<br />
<br />
<br />
Bug fixes:<br />
<br />
Fix window un-maximize bug on Windows - Fixed bug where the restored window position used for un-maximizing a window would keep growing larger on every run.<br />
<br />
Updated selection with filters on - if a selection filter is active, when clicking on an edge or face object to select it do the selection update immediately on the mouse press instead of mouse release. Fixes a bug reported by pior in the forum here:<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=9660.24<br />
<br />
Updated hit testing. Fixed bug where edge boost for selected breps was happening even for objects with selection lock on them. So in the case of boolean difference, the base object was having its edges boosted over top of any standalone curves in the same spot, preventing them from being selected. Fixes a bug reported through e-mail by Vladimir.<br />
<br />
Fixed annotation text bugs with text anchor property. The text anchor property was not persisting properly for all values.<br />
<br />
Fixed a bug with importing a DEGENERATE_TOROIDAL_SURFACE surface type through STEP format.<br />
<br />
Fixed a chamfer/fillet bug with skinny surfaces. If a chamfer surface was skinny (less than 10*tolerance across) it was possible for the chamfer surfaces to get connected improperly since it took just the first one within tolerance instead of the closest one.<br />
<br />
Fixed a bug with keyboard shortcut handling on Mac with a Japanese keyboard. Reported on the forum by nemuneko here:<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=9660.39<br />
<br />
Fixed shortcut key bug where cpaslock key was being interpreted as the letter "A" key.<br><br />
Reported on the forum by nemuneko here: http://moi3d.com/forum/index.php?webtag=MOI&msg=9660.39<br />
<br />
Fixed bugs with dialog size and positioning.<br><br />
Previously when showing a resizable dialog, if there was a saved size from a previous use it would restore that same size. The bug from that was if the dialog size was done on a high resolution monitor and now the use has switched to a different screen the saved dialog size could exceed the current screen resolution. Fixed by limiting saved dialog width and height by current screen size. Also if a saved position for a dialog will be used, check if it is visible on screen before using it. Additionally, don't allow resizable dialogs to shrink to down 0 width or height. Fixes bugs reported through e-mail by James.<br />
<br />
Fixed sweep bug - Freeform sweep framing had a bug when rail segments were anti-tangent. Fixes a bug reported through e-mail by Pilou.<br />
<br />
Updated dimension text rendering - Y positioning for glyphs used incorrect rouning. Was causing noticeable mis-positioned glyphs when using Gill Sans 18 pt font on Mac. Fixes a text display bug reported through e-mail by James.<br />
<br />
Variable radius filleting - linear blend fix. Fixed a bug in variable radius filleting with "linear blend" option where fillet surfaces were not being extended properly. Fixes a bug reported on the forum by Dan R here:<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=9753.1<br />
<br />
Fixed arrowhead bug - outside dimension arrowhead lines not placed correctly on larger scaled objects. Fixes a bug reported through e-mail by James.<br />
<br />
Fixed dimension feet & inches display - for feet&inches, check if the font does not support any Unicode fraction characters being used and if not replace with long form text like 1/2.<br />
<br />
Fixed STEP/IGES import of composite curve entities with G0 discontinuities. Look for G0 discontinuities in imported curves and break those out to separate curves.<br />
<br />
Fix file dialog bug - Fix bug where file open dialog called by script was not returning empty string when canceled. Fixes node editor bug reported in the forum by Wayne here:<br><br />
http://moi3d.com/forum/messages.php?webtag=MOI&msg=7713.880<br />
<br />
Fix Extrude bug with end caps disabled - When making a curve extrude with end caps disabled, a brep with disjoint shells would be created if there were any interior holes in the extrusion.<br />
<br />
Update sweep - true up rail segment ends. If segment end tangents are within 2 degrees of tangent, true them up to be exactly tangent if possible. This can improve corner mitering fails with segments that are nearly G1 but not quite. Fixes bug reported through e-mail by Salvatore.<br />
<br />
Fix curve fillet bugs -<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;Fix curve filleting bug reported by Cemortan_Tudor in the forum here:<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;http://moi3d.com/forum/index.php?webtag=MOI&msg=8665.97<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;and also another curve filleting bug reported a long time ago in the forum by macray here:<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=4958.1<br />
<br />
Fix select last created not working with drag/copy. Reported by Tudor in the forum here:<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=8665.115<br />
<br />
Fix bug in orient line / line<br><br />
Fix bug when line directions pointing opposite each other. Fixes a bug reported in the forum by Karsten here:<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=9476.422<br />
<br />
Fix file dialog crash on Mac Catalina OS<br><br />
Implement fix for QTBUG-83342 for an OS bug that could cause the file dialog to crash on Mac Catalina OS.<br />
<br />
<br />
Scripting updates:<br />
<br />
Added Curve.getIsTangentEdge( AngleToleranceDegrees /* optional, default = 2 degrees */ );<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;- returns true if the 2 surfaces on either side of the edge are tangent to each other.<br />
<br />
Added CurveSegment.getIsG1ToAdjacentSegment( 0 /* 0 for start, 1 for end */ );<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;- returns true if the next segment at the start or end is smooth to the current curve segment.<br />
<br />
moi.filesystem.shellExecute(), added wait for finished parameter.<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;moi.filesystem.shellExecute( path, params, wait ) now takes an optional 3rd boolean parameter for whether to wait until the called process has exited before returning. When used, the return value from shellExecute() is an object containing an .exitCode property for the integer exit code of the called process and an .output string parameter for any text written by the called process to stdout.<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;Example:<br />
&nbsp;&nbsp;&nbsp;&nbsp;var res = moi.filesystem.shellExecute( 'cmd /c dir c:\\', '', true );<br />
&nbsp;&nbsp;&nbsp;&nbsp;if ( res.output ) moi.ui.alert( res.output );<br />
<br />
Updated geometryDatabase::addObject()<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;Ignore the add if the given object is already in the geometry database. Fixes node editor bug reported by Brian here:<br />
&nbsp;&nbsp;&nbsp;&nbsp;http://moi3d.com/forum/index.php?webtag=MOI&msg=7777.1668<br />
<br />
Add face.isNew and curve.isNewEdge properties.<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;These will be set to true if the face or edge was newly generated instead of coming from a copy or split off piece of an original one.<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;example:<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;script: /* Select new edges at intersections after a boolean command */ moi.geometryDatabase.deselectAll();<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;var breps = moi.geometryDatabase.getLastCreated().getBReps(); for ( var i = 0; i < breps.length; ++i )<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;{ var edges = breps.item(i).getEdges(); for ( var j = 0; j < edges.length; ++j ) { var e = edges.item(j);<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;if ( e.isNewEdge ) e.selected = true; } }<br><br />
<br />
Add moi.geometryDatabase.getLastCreated(); - get an object list of the objects that were created by the last run command.<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;Example:<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;script: /* Select fillet surfaces */ moi.geometryDatabase.deselectAll(); var breps = moi.geometryDatabase.getLastCreated().getBReps();<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;for ( var i = 0; i < breps.length; ++i ) { var faces = breps.item(i).getFaces(); for ( var j = 0; j < faces.length; ++j )<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;{ var f = faces.item(j); if ( f.isNew ) f.selected = true; } }<br><br />
<br />
Update MoiList and ObjectList - Add list.clear() and objectlist.clear() methods which will empty out the list so it has length=0.<br />
<br />
Add curve.changeClosedCurveSeam( new_start_parameter, rebuild_circles /*optional, default = true */ );<br />
<br />
Update scripting - window moving and sizing methods.<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;Add window positioning methods:<br />
<br />
&nbsp;&nbsp;&nbsp;&nbsp;win.move( x, y ); - move the window to the given x,y screen coordinates. Can be given either one argument of an object with x,y properties, or 2 numeric arguments.<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;win.resize( width, height ) - resize the client area of a window to the given width and height. Can be given either one argument with x,y or width,height properties, or 2 numeric arguments.<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;win.getPosition() - returns an object with .x and .y properties for the window's screen coordinates.<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;win.getSize() - returns an object with .width and .height properties for the window's client area width and height.<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;win.getFrameSize() - returns an object with .width and .height properties for the window frame's width and height.<br />
<br />
&nbsp;&nbsp;&nbsp;&nbsp;Also added moi.ui.getScreenRect( element ) which will give the screen coordinates of the given element or UIPanel. Returns an object with .left, .top, .right, .bottom, .width, and .height properties.<br />
<br />
&nbsp;&nbsp;&nbsp;&nbsp;Example - increase the Options dialog width by 10 pixels:<br />
<br />
&nbsp;&nbsp;&nbsp;&nbsp;var uipanel = moi.ui.getUIPanel( 'moi://ui/options.htm' );<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;if ( uipanel )<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;{<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;var dlg = uipanel.moiWindow;<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;var pos = dlg.getSize(); pos.width += 10; dlg.resize( pos );<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;}<br />
<br />
&nbsp;&nbsp;&nbsp;&nbsp;Example - position the Options dialog to the right of the side pane:<br />
<br />
&nbsp;&nbsp;&nbsp;&nbsp;var options = moi.ui.getUIPanel( 'moi://ui/options.htm' );<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;if ( options )<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;{<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;var rc = moi.ui.getScreenRect(moi.ui.sidePane);<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;options.moiWindow.move(rc.right,rc.top);<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;}<br />
<br />
Update view tabs customization<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;Call a function UpdateViewTab( TabButton ) in the UI when a view tab has been reversed, so that it is possible to implement custom UI like having images there instead of text. Requested on the forum by Tim Whiteman here:<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=9821.1<br />
<br />
<br />
Update Esc script cancelling<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;Use different method to determine time since last wait for event. The previous method of watching calls to WaitableObject::waitForEvent() is not good because there are other kinds of event loops that do not go through WaitableObject, like modal dialogs or combo box dropdowns. The new method should handle all types of event loops.<br />
<br />
Update offset factory - Enable a new property factory.curveOffsetDistance to return the distance used by offset in through point mode.<br />
<br />
Update pointpicker, add .recalc() method Requested on the forum by Tudor here:<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=8665.221<br />
<br />
<br />
== Oct-27-2020 ==<br />
<br />
[http://moi3d.com/forum/index.php?webtag=MOI&msg=10011.1 Forum announcement]<br />
<br />
This should be the last v4 beta unless any new bugs pop up. The only remaining area for finishing v4 is to update the documentation.<br />
<br />
New stuff:<br />
<br />
Implemented dimension output to PDF/AI formats.<br />
<br />
Loosen cplane projection behavior for dimensions. Projection to the cplane is now a checkbox option inside the dim commands. When turned off you can now do things like pick the first point in the 3D view and then the next point in an ortho view instead of all points being projected to the cplane of the first pick (which can still be enabled by the Project to cplane checkbox option). You can also now create a linear dimension going in the z-axis direction in the 3D view.<br />
<br />
Lightweight conics for PDF/AI export - Use specialized fitter for circles, arcs, ellipses and elliptical arcs to make a lighter weight control point structure. Can be disabled by a setting in moi.ini, add in an entry under [AI/PDF Export] :<br><br />
[AI/PDF Export] UseLightweightConics=n<br />
<br />
Update dimension grid snap. Fix bug where grid snap was snapping to a displaced grid if the initial picked point was not on a grid point. Fixes bug reported in the forum by Larry here:<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=9942.117<br />
<br />
64-bit 3DM file output - switch to Rhino v5 3DM output by default and fixed a bug to allow 3DM files sizes greater than 2GB. Also added a moi.ini option to control the default 3DM version:<br><br />
[3DM] Version= Can be set to Version=4 to make Rhino v4 3DM output which was what MoI v3 used.<br />
<br />
Update FBX default version. Update default FBX file version to 2013/7.3/7300 since Blender does not support 2010/6.1/6100 .<br />
<br />
PDF/AI export - Fix bug with "Preserve units" + "Center on page" option. Fixes a bug reported on the forum by David here:<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=9942.46<br />
<br />
Update DXF spline import - handle DXF output from CorelDRAW with duplicated points. Fixes DXF import problems reported on the forum here:<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=9946.1<br />
<br />
Fixed an infinite loop bug in Qt when showing popup windows in a certain order.<br />
<br />
Update curve control point editing - maintain analytic curves. When doing control point editing on multi segment curves, maintain analytic curve types for segments that are not affected by the current control point selection.<br />
<br />
Updated Esc key handling. If there is a waitable object that has called allowNestedCancel(), don't make Esc cancel the entire command. This should give equivalent behavior for command flow whether clicking on tthe "Cancel" button or using Esc. Fixes a problem reported in the forum by Larry here:<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=9918.1<br />
<br />
Update color picker dialog - fix dialog size shifting when using "Pick Screen Color" button.<br><br />
Fixes a bug reported by Wayne on the forum here:<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=9942.102<br />
<br />
Updated SubD import library with fixes for a couple of remaining crash cases when processing malformed mesh topology.<br />
<br />
Update IGES/STEP output - option for not generating output as an assembly structure. Can be set in moi.ini for IGES or STEP output under:<br><br />
[IGES] ExportFlattenAssemblies=y<br><br />
[STEP] ExportFlattenAssemblies=y<br><br />
Set to =y to generate output without assembly structures same as V3. Should fix problem with exporting to Condacam reported by Joerg in the forum here:<br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=9942.105<br><br />
<br />
Scroll bar bug fix - Update Qt webkit to fix bug when dragging scroll bar and releasing mouse outside window resetting scroll position to top. Fixes a bug reported by Frederick on the forum here:<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=9995.1<br><br />
<br />
Fix edge selection bug after boolean union in areas where planes were merged together. Fixes a bug reported in e-mail by Pilou.<br />
<br />
Update IncrementalSave - Maintain leading 0 padding in current filename, so File_0020.3dm for example will make File_0021.3dm instead of just File_21.3dm as it previously did.<br />
<br />
Add Align option to Draw solid > Text command. Requested by Stefano in the forum here:<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=9942.99<br />
<br />
Add option for showing annotations in a specific color instead of by style color. In moi.ini under the [View] section:<br><br />
AnnotationColorMode=ByStyle<br><br />
AnnotationFixedColor=0,0,0<br><br />
The color mode can be either ByStyle or FixedColor. If set to AnnotationColorMode=FixedColor then they will show using the color from AnnotationFixedColor=R,G,B (each with a value from 0 to 255).<br><br />
Requested by Stefano in the forum here:<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=9950.1<br><br />
<br />
Add Value: property to Details... properties dialog for dimensions for copying value to the clipboard. Requested by Mindset in the forum here:<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=6925.570<br />
<br />
Add option in moi.ini for not limiting Options > View > Meshing parameters > "Mesh angle" value:<br><br />
[View]<br><br />
NoMeshAngleLimit=y<br><br />
<br />
<br />
Scripting:<br />
<br />
Add moi.ui.getLastOrientationPickerFrame() - returns the coordinate frame that was picked with the last OrientationPicker.<br />
<br />
Update startup scripts - call startup scripts after first UI panel layout has been completed so things like the side pane tabs can be manipulated by the script.<br />
<br />
<br />
== Dec-21-2020 ==<br />
<br />
[http://moi3d.com/forum/index.php?webtag=MOI&msg=10075.1 Forum announcement]<br />
<br />
I'm just about ready for the final v4 release. There were a few bugs fixed since the previous v4 beta and the v4 final release, and so I'm publishing this final v4 beta with those last fixes included.<br />
<br />
New stuff:<br />
<br />
Documentation has been updated for v4.<br />
<br />
Update angular dimension extension lines. Only draw extension lines for angular dimensions from the arc to the picked points, not from arc all the way to the center. Fixes angular dimension issues reported in the forum by Mik here:<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=10011.36<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=10011.50<br />
<br />
Update DimRadius command. Fix problem with placing first dimension point further away than the arc's center point. Fixes bug reported by WN on the forum here:<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=10011.47<br />
<br />
Update Inset command - Allow thickness of 0 in Inset command for some additional effects. Discussed in the forum here:<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=10029.2<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=10029.20<br />
<br />
<br />
Bug fixes:<br />
<br />
Fixed regression with named object selection by typing in object names in the XYZ input control. This was broken a couple builds back with a new "Command not found" error message showing if the input did not match any command names.<br />
<br />
Fixed regression in numeric input field handling. Match behavior of v3 when erasing all text in an input field, set a value of 0 in this case. Fixes regression reported by PaQ in the forum here:<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=10011.150<br />
<br />
Update static objects rendering - check for 32-bit index buffer support before trying to use it.<br />
<br />
Update Chamfer - make analytic plane for chamfer surface when possible, fixes Inset failing on a newly generated chamfer which would succeed when saved to 3dm and reloaded. Reported on the forum here:<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=10051.1<br />
<br />
Update Mac font fallbacks. Fix Qt problem where DefaultFontFallbacks.plist file is not present on Catalina OS anymore.<br />
<br />
Update BGFX error handling - Put up a message box if BGFX returns a fatal error and guard against using it if it was not initialized, rather than crashing.<br />
<br />
Update Undo settings - fix shutdown bug where undo settings were not being written to moi.ini on app shutdown.<br />
<br />
Update SKP and FBX export - fix bug where SKP/FBX export didn't work right with some filenames with extended characters.<br />
<br />
<br />
Scripting:<br />
<br />
Update PointPicker script properties so a script can tell if there is a straight snap currently active.<br><br />
Added pointpicker.hasBasePt , pointpicker.hasStraightSnap , pointpicker.straightSnapDir read only properties.<br><br />
This makes it possible to do a "direction lock" shortcut key:<br><br />
var pp = moi.ui.getActivePointPicker(); if ( pp && pp.hasStraightSnap ) { pp.restrictToLinePtDir( pp.basePt, pp.straightSnapDir, true ); }<br />
<br />
<br />
== Dec-22-2020 ==<br />
<br />
V4 release version.</div>Michael Gibsonhttp://moi3d.com/wiki/index.php?title=Resources&diff=913Resources2020-12-26T11:55:57Z<p>Michael Gibson: /* Tutorials */</p>
<hr />
<div><big>Links to useful MoI information on the web</big>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;([[Resources_%28french%29|Version Française ici]])<br />
<br />
[http://moi3d.com MoI home page] <br />
<br />
[http://moi3d.com/forum MoI discussion forum]<br />
<br />
[[FAQ|Frequently Asked Questions]]<br />
<br />
[http://moi3d.com/4.0/docs/moi_help.htm MoI help file online] &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;([http://moi3d.com/4.0/docs/moi_help_French.htm French])&nbsp;&nbsp;([http://moi3d.com/2.0/docs/moi_help_German.htm German])&nbsp;&nbsp;([http://moi3d.com/2.0/docs/moi_help_Spanish.htm Spanish])&nbsp;&nbsp;([http://moi3d.com/1.0/docs/moi_help_Italian.htm Italian])<br />
<br />
[[Shortcut Keys]]<br />
<br />
[[Hidden Secrets]]<br />
<br />
[[Scripting]] <br />
<br />
[http://kyticka.webzdarma.cz/3d/moi/ Petr's MoI page], contains a variety of MoI information including scripts and custom commands. ([http://moiscript.weebly.com/ French version])<br />
<br />
[http://moi.maxsm.net/ Max Smirnov's MoI scripts], numerous advanced scripts from Max. [http://moi.maxsm.net/media/files/ Max's file archive ]([http://moiscript.weebly.com/ French version])<br />
<br />
[http://moi3d.com/forum/index.php?webtag=MOI&msg=7841.6 Burr's script archive - collection of scripts that have been posted on the forum]<br />
<br />
[[V4Beta|V4 Beta release notes]]<br />
<br />
[[Nodeeditor|Node editor plugin]]<br />
<br />
[http://moi3d.com/3.0/EULA_retail.rtf MoI End User License Agreement]<br />
<br />
<br />
Language packs: ([http://moi3d.com/2.0/docs/v2_Spanish_update.zip Spanish v2 update])&nbsp;&nbsp;([http://moi3d.com/1.0/docs/Italian_language_pack.zip Italian UI and help file]) ([http://moi3d.com/2.0/docs/french_command_reference_update.zip French v2 update]) ([http://moi3d.com/2.0/docs/v2_German_update.zip German v2 update])<br />
<br />
<br />
<br />
== Tutorials ==<br />
[http://moi3d.com/3.0/docs/tutorials.htm MoI documentation video tutorials]<br />
<br />
[https://gumroad.com/l/fGqqS MoI for Game Assets video tutorial by Arrimus 3D - 5 hours $9.99 on Gumroad]<br />
<br />
[https://gumroad.com/l/vavRq MoI Basics video tutorial by Bojan Koturanović - 7 hours $25 on Gumroad]<br />
<br />
[http://moiusers.blogspot.com/ Introductory videos by Tom Meeks] - videos with narration covering a lot of basics.<br />
<br />
[https://www.youtube.com/playlist?list=PLu-75I3Zd8NS0AH3O75nOuerVz9O1rTUI Tutorials on YouTube by Liminal4D]<br />
<br />
[http://moi3d.com/forum/index.php?webtag=MOI&msg=9816.1 48 German language video tutorials by Stefan Schneller on jewelry design]<br />
<br />
[http://moi3d.com/download/Moi3d-Overview.pdf Introduction and overview PDF by Fabien Franzen]<br />
<br />
[http://moi3d.com/forum/index.php?webtag=MOI&msg=7389.1 Sub-d car modeling in MoI by Ed Ferguson]<br />
<br />
[http://moi3d.com/forum/index.php?webtag=MOI&msg=9899.1 Custom truck tutorial by Ed Ferguson]<br />
<br />
[http://www.k4icy.com/tutorials.html Mike Maynard's tutorials], and here 18 of them [http://moiscript.weebly.com/ in French by Pilou]<br />
<br />
[http://moi3d.com/forum/index.php?webtag=MOI&msg=6058.1 Videos from Andrei Samardac]<br />
<br />
[http://moi3d.com/forum/index.php?webtag=MOI&msg=3842.1 Video from lyes on modeling a SpacePilot controller]<br />
<br />
[http://vimeo.com/channels/moi3d Vimeo channel with tutorials from lyes]<br />
<br />
[http://bitreality.blogspot.com/ Joe's classical column video tutorials]<br />
<br />
[http://moi3d.com/forum/index.php?webtag=MOI&msg=402.9 Japanese bathtub tutorial]<br />
<br />
[http://moi3d.com/forum/index.php?webtag=MOI&msg=446.17 Object repair tutorial]<br />
<br />
[http://moi3d.com/forum/index.php?webtag=MOI&msg=284.1 Ring tutorial by Jesse Kaufman], and [http://moi3d.com/forum/index.php?webtag=MOI&msg=510.5 #2], [http://moi3d.com/forum/index.php?webtag=MOI&msg=623.1 #3], <br />
[http://moi3d.com/forum/index.php?webtag=MOI&msg=556.1 #4],<br />
[http://moi3d.com/forum/index.php?webtag=MOI&msg=538.6 #5],<br />
[http://moi3d.com/forum/index.php?webtag=MOI&msg=536.1 #6]<br />
<br />
[http://moi3d.com/forum/index.php?webtag=MOI&msg=1175.3 Simple ring using rail revolve], and [http://moi3d.com/forum/index.php?webtag=MOI&msg=1175.5 variant using sweep + scaling rail for more control]<br />
<br />
[http://moi3d.com/forum/index.php?webtag=MOI&msg=1057.1 Product design forums modeling challenges] (not specific to MoI but useful for general CAD modeling strategy).<br />
<br />
[http://moi3d.com/forum/index.php?webtag=MOI&msg=606.4 Simple Intarsia type design]<br />
<br />
[http://moi3d.com/forum/index.php?webtag=MOI&msg=1171.2 Creating a 3-toed base foot]<br />
<br />
[http://moi3d.com/forum/index.php?webtag=MOI&msg=1514.1 Modeling a water can out of one smooth surface]<br />
<br />
[http://moi3d.com/forum/index.php?webtag=MOI&msg=2546.1 Ferrari 599 GTB tutorial videos by lyes]<br />
<br />
[http://moi3d.com/forum/index.php?webtag=MOI&msg=2429.1 Snowman figure by PaQ]<br />
<br />
[http://cid-30cffdfa97399495.skydrive.live.com/self.aspx/.Public/Accurate|_Tapers|_MoI|_V2.zip Accurate tapers using Expressions by Danny] ( Not really needed since Extrude now has a taper function good if you want to learn basic trig) D.T.<br />
<br />
[http://moi3d.com/forum/index.php?webtag=MOI&msg=3814.1 Discussions on ship hull techniques]<br />
<br />
[http://moiscript.weebly.com/ Videos: Functions of the Manual by Pilou (in French)]<br />
<br />
[http://vimeo.com/30765016 Making accurate screw threads video from OSTexo]<br />
<br />
[http://vimeo.com/30168354 Flow workflow video from danperk]<br />
<br />
[https://3dcncguitars.com/ Tutorials for guitar modeling in MoI and Rhino and CNC production]<br />
<br />
[http://moi3d.com/forum/index.php?webtag=MOI&msg=8845.16 Car modeling techniques by Zarkow], and [http://moi3d.com/forum/index.php?webtag=MOI&msg=8845.5 #2] and [http://moi3d.com/forum/index.php?webtag=MOI&msg=9956.1 video tutorials]<br />
<br />
== Helper programs ==<br />
Some standalone small programs to help accomplish specific tasks.<br />
<br />
=== Obj23dmWireframe converter ===<br />
[http://moi3d.com/download/Obj23dmWireframe.zip Download Obj23dmWireframe converter]<br />
<br />
This enables bringing polygon data in an .obj file into MoI to use as a construction guide.<br />
Unzip it to some folder, and then you can run the Obj23dmWireframe.exe program. It will prompt you for the name of an .obj file to read, and after that the name of a .3dm file to create. It will read all the polygon data from the obj file and convert the edges of polygons into line segments, and then write those line segments to the 3dm file. You can then load that 3dm file into MoI and use those line segments to snap on to. Originally posted on the forum [http://moi3d.com/forum/index.php?webtag=MOI&msg=1099.1 here].<br />
<br />
=== MergeOBJ utility ===<br />
[http://moi3d.com/download/MergeOBJ.exe Download MergeOBJ utility]<br />
<br />
This utility program can combine several input OBJ files into one single OBJ file. This may be useful if you want to build up a set of different OBJ files possibly by exporting pieces with different mesh settings, and then combine them into one OBJ file if your target program wants to work with only a single file. This was created because the freely available mesh editing tools have a tendency to remove vertex normals when combining files together, this utility will preserve vertex normals. Announced on the forum [http://moi3d.com/forum/index.php?webtag=MOI&msg=3570.12 here].<br />
<br />
=== Old utilities ===<br />
[http://moi3d.com/download/3dmCurves2DXF.zip 3dmCurves2DXF converter] - This could convert curves in a 3DM file to a DXF file to be used for CAM programs. It's not needed anymore since MoI v3 now directly supports DXF file export.<br><br><br />
These utilities were to help with MoI v1 which did not export material assignments to OBJ files. Since MoI v2 can control material assignments by assigning Styles, these are no longer necessary but are still included here for v1 users.<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;[http://moi3d.com/download/SeparateOBJ.zip SeparateOBJ editor] - Breaks an OBJ file exported from MoI v1 into smaller pieces and puts separate material assignments on each piece for import into programs that require that.<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;[http://moi3d.com/download/MergeOBJ_old.zip MergeOBJ editor (old version)] - Edits an OBJ file to combine all the different objects in it into one single object so there will be just one material for the whole thing.</div>Michael Gibsonhttp://moi3d.com/wiki/index.php?title=V4Beta&diff=912V4Beta2020-12-23T21:42:12Z<p>Michael Gibson: /* Dec-21-2020 */</p>
<hr />
<div><big>Release notes for each V4 beta release are gathered here.</big><br />
<br />
== Nov-12-2017 ==<br />
<br />
[http://moi3d.com/forum/index.php?webtag=MOI&msg=8675.1 Forum announcement]<br />
<br />
V4 is a major rewrite with changes on many levels so please be on the lookout for any bugs.<br />
<br />
The main new functionality is that MoI is now a 64-bit program for both Windows and Mac and the Mac version is a native build and doesn't use Wineskin anymore.<br />
<br />
New system requirements are Windows 7/8/10 64-bit or macOS 10.8 - 10.13 .<br />
<br />
Polygon conversion can now use all your system memory instead of running into 32-bit memory limits.<br />
<br />
A lot of various little quirky things should be tuned up for the Mac version.<br />
<br />
The only known areas still not quite working yet are snap text labels and dotted/dashed line styles in viewports and Mac trackpad gestures aren't fully functional yet.<br />
<br />
<br />
== Nov-18-2017 ==<br />
<br />
[http://moi3d.com/forum/index.php?webtag=MOI&msg=8682.1 Forum announcement]<br />
<br />
Bug fixes:<br />
<br />
Fix for the frozen UI bug when restoring a maximized main window from a minimized or hidden state. Please let me know if you see it again.<br />
<br />
Fix Mac deployment issue that was preventing things from working on OS X 10.8 and 10.9, MoI should run ok there now.<br />
<br />
Fix font name bug where MoI V4 would overwrite the UI font name property that V3 uses in moi.ini and so the V3 UI font changed after you ran V4. They should now stay separate.<br />
<br />
Fix bug where dropdown controls in commands wouldn't reinitialize to their last used value. Reported by bemfarmer in the forum here:<br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=8675.204<br />
<br />
Fix construction line snapping bug reported in the forum by Moujiik here:<br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=8675.119<br />
<br />
Not a whole lot of changes, normally I would have waited until a bit more were batched up but the frozen UI bug was pretty significant so I wanted to try and nail that one down soon.<br />
<br />
<br />
== Nov-27-2017 ==<br />
<br />
[http://moi3d.com/forum/index.php?webtag=MOI&msg=8704.1 Forum announcement]<br />
<br />
Bug fixes:<br />
<br />
Saving to IGES and STEP files - fixed a bug where using .stp or .igs file extensions wasn't working on Mac.<br />
<br />
Mac full screen mode - fix for the problem where the view controls window would show on the desktop space, sending you back to the desktop the first time you moved the mouse over a viewport after going to full screen. Please let me know if you see it again.<br />
<br />
Updated shortcut key editor - Make the "Key" column expand to whatever width is necessary to show the longest key combo. Fixes problem reported in the forum by Metin here:<br />
http://moi3d.com/forum/messages.php?webtag=MOI&msg=8682.42<br />
<br />
Viewport toolbar - fixed a bug where doing view manipulation using the bottom viewport toolbar could miss the mouse up event and get stuck.<br />
<br />
Orientation picker - fixed a sporadic drawing bug with the orientation picker reported on the forum by Max here:<br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=8682.16<br />
<br />
Shortcut keys with Shift - Fixed a bug in shortcut keys using shift + number keys. V4 was generating Shift+1 as Shift+! which was incompatible with V3, V3 would convert it back to Shift+1 which was then not recognized by V4. V4 should now generate Shift+1 for that key combination and not Shift+! anymore. Fixes a bug reported on the forum by Marco here:<br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=8682.50<br />
<br />
Background images - Fixed a crash when making a background image from a bitmap file with lower than 32-bit color depth. Reported on the forum by Vladimir here:<br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=8682.100<br />
<br />
Undo - Fixed a bug where undo wouldn't find the proper object to restore in some cases. Reported on the forum by Val here:<br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=8682.83<br />
<br />
<br />
Scripting:<br />
<br />
moi.geometryDatabase.findStyle() - fixed a bug in the findStyle() function for the "create if not found" case, reported on the forum by Max here:<br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=8682.16<br />
<br />
obj.getBoundingBox() - The boolean parameter for getting high accuracy bounds was marked as required in v4, while in v3 it was optional with a default of false. Updated v4 to match v3.<br />
<br />
moi.filesystem.openFileStream - switch to use QTextStream for reading to get better unicode support. Unicode files with byte order marks should be supported now, the default will be UTF-8 if no byte order mark is found. Also added new methods .setWriteBOM( boolean ) which you can call to make writing a text file write the byte order mark at the front (default is no BOM), and .setCodec( name ) to have specific control over what encoding to use for reading or writing. Supported codecs are listed here: http://doc.qt.io/qt-5/qtextcodec.html#details .<br />
<br />
moi://appdata/ - add support for moi://appdata/ URLs so you can load HTML resources like images from the MoI app data directory. moi://appdata/ will resolve to %AppData%\Moi on Windows and to ~/Library/Application Support/Moi on Mac.<br />
<br />
String to integer conversion - Updated so a string value of "1.0" will be successfully converted to an integer value of 1 rather than rejecting it. Fixes a change in behavior from v3 to v4 that broke some of Brian's scripts.<br />
<br />
factory.setValue() - switched to v3 behavior so sending the wrong object type doesn't trigger an exception. Fixes the SpurGearProfile script.<br />
<br />
<br />
== Dec-11-2017 ==<br />
<br />
[http://moi3d.com/forum/index.php?webtag=MOI&msg=8731.1 Forum announcement]<br />
<br />
Bug fixes and changes:<br />
<br />
Mac full screen mode - getting sent back to the desktop the first time you moved the mouse over each viewport after going to full screen mode should be finally fixed! Also Ctrl+Cmd+F shortcut key for full screen toggle should now work.<br />
<br />
Mac trackpad and Magic Mouse - Finished implementing multitouch view navigation for the trackpad and Magic Mouse on Mac. Magic Mouse should be back to zooming instead of panning. The Zoom speed can be adjusted in moi.ini [MultiTouch] MagicMouseZoomSpeed=1.0 . Change this to something like 2.0 to make the default behavior faster or 0.5 to go slower. You can also hold down the Ctrl key to go slower as well.<br />
<br />
Mac ignored mouse bug - Fix for bug where mousemove events would stop working in certain conditions when restoring the main window from hidden or showing a modal dialog. Fixes bug reported by Finema here: http://moi3d.com/forum/index.php?webtag=MOI&msg=8675.189<br />
<br />
Updated "On" object snap mechanics - Changed the way On object snap for curves works to get better accuracy with curves far from the origin.<br />
<br />
Incorrect default values for some commands - Fixed a bug where the default values for the Text and Rebuild commands were incorrect on locales that use commas for the decimal separator. Reported by Vladimir on the forum here: http://moi3d.com/forum/index.php?webtag=MOI&msg=8704.32<br />
<br />
Trim - fixed a bug in the Edit &gt; Trim command where if an object was set to be both an object to be trimmed as well as a cutting object it could get hidden unexpectedly.<br />
<br />
Command button highlighting - Fix for command buttons remaining highlighted after command ends. Reported by Vladimir on the forum here: http://moi3d.com/forum/index.php?webtag=MOI&msg=8704.32<br />
<br />
Read-only file handling - Fix bug where using File &gt; Save wasn't prompting for a new file name when the current opened file was set to read-only. Reported in the forum by mhasse here: http://moi3d.com/forum/index.php?webtag=MOI&msg=8714.1<br />
<br />
Crash fix for newer CPU/Older OS combination - Fix for 0xc000001d illegal instruction exception when running on Win7 SP0 with a newer AVX-capable CPU.<br />
<br />
Hidden-line generation - Increase Canvas megapixel size limit from 175 to 1000.<br />
<br />
Degenerate box error - fixed bug where a script error would be displayed if you made a degenerate rectangle in any of the Draw solid &gt; Box commands.<br />
<br />
Update text input fields - Text input fields were only applying typed in values when the input panel was open, or when the Enter or Tab keys were pressed, not if just clicking outside the field as they now will. Should fix a PDF export dialog bug reported by reported by Moujiik here: http://moi3d.com/forum/index.php?webtag=MOI&msg=8704.15<br />
<br />
<br />
Scripting:<br />
<br />
viewport.setCameraAndTarget() - Fixed bug in viewport.setCameraAndTarget() function, reported in the forum by Ralf here: http://moi3d.com/forum/index.php?webtag=MOI&msg=8704.25<br />
<br />
Process memory use limit - Added option in moi.ini for limiting maximum memory use - Windows only. Can be set in moi.ini under [Settings] MaxProcessMemoryUse=x . Requested by Burr on the forum here: http://moi3d.com/forum/index.php?webtag=MOI&msg=8704.26<br />
<br />
moi.view.screenshot - Fix bug where the moi.view.screenshot() method was capturing the wrong area of the screen on Mac.<br />
<br />
<br />
Enable setting default values for controls from shortcut keys. UI controls can now be triggered or initialized with custom values if the control's id is supplied in the command-line parameters for the command. For buttons, the presence of the button's id value in command line parameters will trigger a UI event for the button the first time that it is shown, this will have the same effect as clicking the button.<br />
For dropdowns and checkboxes, the presence of the control's id in an id=value pair will use that value to initialize the control rather than taking the last used or default value as normal.<br />
<br />
This makes it possible to set up shortcut keys that package up different options within commands, for example:<br />
<br />
Trim addtrimpoints removekeepmode=keep<br />
<br />
Trim addtrimpoints removekeepmode=remove<br />
<br />
Trim isocurve isodir=u<br />
<br />
Trim isocurve isodir=v<br />
<br />
Line bothsides=true<br />
<br />
Extrude tapered<br />
<br />
<br />
<br />
== Feb-9-2018 ==<br />
<br />
[http://moi3d.com/forum/index.php?webtag=MOI&msg=8814.1 Forum announcement]<br />
<br />
Text labels inside viewports still not implemented yet, that's the last remaining thing still left to get v4 fully caught up.<br />
<br />
<br />
Bug fixes and changes:<br />
<br />
<br />
Dashed/Dotted line styles implemented so things like the grid, construction lines, and hidden line display should be looking proper now.<br />
<br />
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.<br />
<br />
DXF import layers - Support reading layers in the DXF file as Styles in MoI.<br />
<br />
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<br />
<br />
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.<br />
<br />
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.<br />
<br />
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.<br />
<br />
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<br />
<br />
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.<br />
<br />
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.<br />
<br />
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.<br />
<br />
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<br />
<br />
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<br />
<br />
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.<br />
<br />
Windows shutdown bug - Fix bug when shutting down Windows while MoI is still open reported by Vladimir in the forum here:<br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=8731.81<br />
<br />
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<br />
<br />
Fix crash on program shutdown if license key dialog was canceled.<br />
<br />
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<br />
<br />
<br />
<br />
Scripting:<br />
<br />
Added additional script interface for Curve and CurveSegment objects.<br />
<br />
For both Curves and CurveSegments:<br />
<br />
crv.domainMin - Property that returns lower bound of the curve's parametric domain.<br />
<br />
crv.domainMax - Property that returns upper bound of the curve's parametric domain.<br />
<br />
crv.evaluatePoint( t ) - Function returning a point for the given parameter value.<br />
<br />
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.<br />
<br />
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.<br />
<br />
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...<br />
<br />
crv.isPlanar - Property that returns true if the curve's control polygon is planar.<br />
<br />
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.<br />
<br />
crv.isOnPlane( frame ) - Function that returns true if the curve is on the given frame's x/y plane.<br />
<br />
crv.isOnParallelPlane( frame ) - Function that returns true if the curve is on a plane parallel to the given frame's x/y plane.<br />
<br />
crv.isClosed - Property that returns true if the curve is closed.<br />
<br />
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).<br />
<br />
crv.isDegenerate - Property that returns true if the curve has a degenerate control polygon with all the points stacked in the same spot.<br />
<br />
crv.isLine - Property that returns true if the curve has the shape of a line.<br />
<br />
crv.isSimpleLine - Property that returns true if the curve is a simple line segment made up of only 2 control points.<br />
<br />
crv.isCircle - Property that returns true if the curve is a circle.<br />
<br />
crv.isArc - Property that returns true if the curve is a circular arc.<br />
<br />
crv.isEllipse - Property that returns true if the curve is an ellipse (either a full ellipse or an elliptical arc).<br />
<br />
crv.conicFrame - Property that returns the coordinate frame of a circle, arc, or ellipse. Only valid if isCircle, isArc, or isEllipse returns true.<br />
<br />
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.<br />
<br />
crv.conicRadiusY - Property that returns the y-axis radius of an ellipse. Only valid if isEllipse returns true.<br />
<br />
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.<br />
<br />
<br />
The following only apply to Curves, not CurveSegments:<br />
<br />
crv.isClickSelected - Property that returns true if the curve was selected by a mouse click action.<br />
<br />
crv.clickSelectionPoint - Property that returns the point on the curve where it was click selected. Only valid if isClickSelected returns true.<br />
<br />
crv.clickSelectionParam - Property that returns the parameter value of the curve where it was click selected. Only valid if isClickSelected returns true.<br />
<br />
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.<br />
<br />
<br />
Added moi.ui.systemDPI property.<br />
<br />
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.<br />
<br />
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.<br />
<br />
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.<br />
<br />
Add a container with id="CommandBarCustomUI" in CommandBar.htm to make it easier to populate the UI from a startup script.<br />
Example:<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;var container = moi.ui.commandBar.CommandBarCustomUI;<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;container.insertAdjacentHTML( 'beforeEnd', '<moi:CommandButton>Test1</moi:CommandButton>' );<br />
<br />
Appdata/scripts directory - you can add a scripts folder inside appdata and MoI will also check there for running an "instant script".<br />
<br />
<br />
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.<br><br />
The trackpadgesture event object has these properties:<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;event.gestureType : string value of 'Scroll', 'SmartZoom', 'Zoom', or 'Rotate'.<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;event.deltaX, event.deltaY : movement for Scroll , 2 fingers swiping.<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;event.numTouches : number of touch points being used for Scroll.<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;event.scaleFactor : scale factor for pinch/zoom<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;event.angle : angle change for Rotate.<br><br />
<br />
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();<br />
<br />
<br />
== May-12-2018 ==<br />
<br />
[http://moi3d.com/forum/index.php?webtag=MOI&msg=8936.1 Forum announcement]<br />
<br />
I think this version is all caught up now, the last remaining things that were missing from v3 such as text labels inside viewports are now implemented and all regression bugs that have been reported should now be fixed. So if that holds up this should be a major milestone for v4 where I'll now be switching to working on new features rather than rewriting stuff from v3.<br />
<br />
Bug fixes and changes:<br />
<br />
<br />
Implemented text rendering inside viewports for things like snapping tag labels ("End", "Mid", etc...)<br />
<br />
OBJ export - Fixed bug where invalid OBJ file would be generated if object names had extended characters in them. Reported through e-mail by Lewis.<br />
<br />
STEP import - Fixed crash bug in STEP import reported through e-mail by John Lewis.<br />
<br />
iMac Pro draw speed - Fixed bug where too frequent UI updates caused a noticeable draw speed slowdown compared to V3 on some high dpi Mac machines. Fixes bug reported by Metin.<br />
<br />
Mouse cursors - Fixed various bugs where the mouse cursor wasn't updating properly, reported by Vladimir in the forum here:<br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=8814.128<br />
<br />
Text field right click context menu - Fixed a bug with right click on text input fields in menus being offset.<br />
<br />
Menu hover state - Fixed a bug where when launching a menu, the button hover state on the launching UI would get stuck until another click.<br />
<br />
Color picker custom colors - Custom colors set in the color picker dialog are now saved to and restored from moi.ini so they will persist between program sessions.<br />
Fixes bug reported by Moujiik on the forum here: http://moi3d.com/forum/index.php?webtag=MOI&msg=8855.5<br />
<br />
Object properties - Fixed bug where cached objects in the async worker process wouldn't get updated if style, name, or selection changed.<br />
Fixes bug reported on the newsgroup by Brian here: http://moi3d.com/forum/index.php?webtag=MOI&msg=8814.81<br />
<br />
Selection filter crash - Fix for crash when setting a style selection filter, reported by Shane on the forum here: http://moi3d.com/forum/index.php?webtag=MOI&msg=8872.1<br />
<br />
Busy script interruption - Scripts that do a lot of calculation in loops can now be interrupted by pushing the Escape key.<br />
Requested on the forum by Marco here: http://moi3d.com/forum/index.php?webtag=MOI&msg=8814.63<br />
<br />
Trackpad scroll gesture - Fix bug where Mac trackpad scroll gesture could be treated as a mouse wheel event,<br />
if the first touch happened on a different window.<br />
Fixes bug reported by Max in the forum here: http://moi3d.com/forum/index.php?webtag=MOI&msg=8814.21<br />
<br />
DXF export arcs and circles - Previously arcs and circles that had a normal vector pointing straight down in the negative z axis direction would get flipped in the export, because there are a couple of programs that do not read those correctly. But this direction flip is bad for CNC usage, so the default now is to not flip them. It is possible to return to the previous flipping behavior by a setting in moi.ini: [DXF Export] FlipNegativeZAxisCirclesAndArcs=y<br />
Fixes a bug reported in the forum by Vladimir here: http://moi3d.com/forum/index.php?webtag=MOI&msg=6925.419<br />
<br />
VSync - Added option in moi.ini to limit screen redraw with vsync, might help if you are experiencing a tearing type effect in the display.<br />
Can be set under [View] VSync=y . Requested by torsten in the forum here: http://moi3d.com/forum/index.php?webtag=MOI&msg=8814.140<br />
<br />
Additional command dirs - Add moi.ini setting under [Commands] AdditionalCommandsDirs= which can be set to a semi-colon delimited list of additional directories to look for commands, in addition to the built in commands and appdata commands.<br><br />
[Commands]<br><br />
AdditionalCommandsDirs=c:\path1;c:\path2<br><br />
Requested on the forum by Hamish here: http://moi3d.com/forum/messages.php?webtag=MOI&msg=8814.97<br />
<br />
FBX export vertex colors - Add option in moi.ini for writing vertex colors to FBX exports. Can be enabled by setting:<br><br />
[FBX Export]<br><br />
WriteVertexColors=y<br><br />
Requested by Stefan in the forum here: http://moi3d.com/forum/index.php?webtag=MOI&msg=8853.5<br />
<br />
Graphics API override - Add moi.ini option for which graphics API to use. <br />
On Windows or Linux/Wine a specific render engine can be controlled by a setting in moi.ini, under the [View] section, GraphicsAPI key:<br><br />
[View]<br><br />
GraphicsAPI=Direct3D11<br><br />
or<br><br />
GraphicsAPI=OpenGL<br />
<br />
Startup working directory - Add moi.ini options for setting the initial working directory on startup.<br><br />
[Settings]<br><br />
StartupWorkingDirectory=<br><br />
SaveWorkingDirectoryAtExit=n<br><br />
Requested by Marc in the forum here: http://moi3d.com/forum/index.php?webtag=MOI&msg=8814.88<br />
<br />
Trackpad as mouse wheel - Add setting in moi.ini for making Mac trackpad scroll used as a mouse wheel zoom as older MoI versions did.<br><br />
[MultiTouch]<br><br />
UseTrackpadScrollAsMouseWheel=y<br><br />
Requested by Marc in the forum here: http://moi3d.com/forum/index.php?webtag=MOI&msg=8814.88<br />
<br />
<br />
<br />
== Jun-6-2018 ==<br />
<br />
[http://moi3d.com/forum/index.php?webtag=MOI&msg=8966.1 Forum announcement]<br />
<br />
New stuff:<br />
<br />
Major overhaul of STEP/IGES/SAT importing.<br />
<br />
These imports will now no longer block the main thread so it won't look like MoI is frozen while it is loading a big file.<br />
<br />
The loading happens in 2 phases, first an initial scan of the file that doesn't do too much work except logging the structure of where objects are located. Then the next heavier phase of processing the objects will make use of multiple CPU cores for a major speed increase. So there should be a very substantial performance increase in loading large STEP, IGES, or SAT files in this version.<br />
<br />
Also the HarmonyWare libraries used for working with these formats have now been updated from version 1.7.11 to the latest 2.0.8 release and there are a lot of bug fixes from that. A notable one is that some incorrect positioning of instances should be good now. Also some other fixes on MoI's side should make for colors coming through from STEP files that were previously missed.<br />
<br />
It would be cool to hear how the new multi-core enabled importer performs on some big files compared to MoI v3!<br />
<br />
Also please let me know if you see any new problems with any particular imports. If you do please try to send the file to me at moi@moi3d.com so I can test with it over here, I will keep any files confidential.<br />
<br />
<br />
Other things:<br />
<br />
Window selection Mac - Fix for sluggish selection window dragging reported by James through e-mail.<br />
<br />
Properties panel size display - Adjusted the quick size calculation for the properties panel to hopefully increase accuracy a little.<br />
<br />
Properties panel - Report closed edges as a distinct object type. Fixes an issue of inconsistent behavior between curves and edges reported through e-mail by Scott.<br />
<br />
Edit frame grip size - Added option in moi.ini for setting edit frame grip handle pixel size, so it can be adjusted for higher res displays,<br />
Requested by Barry in the forum here: http://moi3d.com/forum/index.php?webtag=MOI&msg=8960.1<br><br />
[View]<br><br />
EditFrameGripPixelSize=24<br />
<br />
DisableOnSrfInOrtho setting - Added scripting access to DisableOnSrfInOrtho setting so it can be toggled at runtime under moi.drawingAids.disableOnSrfInOrtho . Requested on the forum by immortalx here: http://moi3d.com/forum/index.php?webtag=MOI&msg=8947.1<br />
<br />
NURBS Export RotateZUpToYUp option - Added option in moi.ini for option for exporting STEP/IGES/SAT formats to rotate the export to a Y up coordinate system.<br><br />
[NURBS Export]<br><br />
RotateZUpToYUp=y<br />
<br />
Update viewport right click - Don't push Cancel buttons with a viewport right click, it's too easy to accidentally cancel a long file import or things like that.<br />
<br />
<br />
<br />
== Aug-28-2018 ==<br />
<br />
[http://moi3d.com/forum/index.php?webtag=MOI&msg=9044.1 Forum announcement]<br />
<br />
The main focus for this beta is performance enhancements.<br />
<br />
3DM files will now use multiple CPU cores for loading so large files should load significantly faster and show a progress bar.<br />
<br />
Also the display engine has been enhanced to take advantage of modern GPUs - display data is now cached in the GPU's VRAM which should result in faster redraw speed for large files.<br />
<br />
<br />
Other bug fixes and changes:<br />
<br />
Mac version multiple windows - Add "Window" menu to Mac version top menu. Shows all open files and allows switching between them easier. Also support Cmd+Tilde (Cmd+~) and Cmd+Shift+Tilde for switching to next/prev window.<br />
<br />
Construction line bug fix - Fix construction line creation bug reported by jopo in the forum here:<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=8966.53<br />
<br />
Object drag bug fix - fix bug for moving the mouse over another viewport when dragging objects. Reported by Burr on the forum here:<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=9016.1<br />
<br />
Mac AMD performance - fix problem with default buffer location with OpenGL on some AMD cards that was causing slow redraws on some machines like iMac pro.<br />
<br />
Updated Mac file open behavior. To match the Mac document based application framework behavior, if a file is opened by drag/drop or by double-clicking on the desktop icon do not open a new window for it if there is an existing window with it already open.<br />
<br />
3DS Max zoom compatibility - Added moi.ini option for Alt+Ctrl+MMB zoom for 3DS Max compatibility. Can be set under:<br><br />
[View]<br><br />
AltCtrlMMBZoom=y<br><br />
<br />
Object snap labels on left side - Add moi.ini option to make object snap labels shown to the left of the target point, can be useful if you're drawing directly on a screen such as with a Cintiq screen. Can be set in moi.ini under:<br><br />
[Drawing Aids]<br><br />
ShowObjectSnapLabelToLeft=n<br><br />
<br />
Shortcut keys update - On Windows if there is a [Shortcut Keys Mac] section of the moi.ini file, read and write shortcuts from there so you can copy the moi.ini file over from Mac to Windows. Fixes issue reported on the forum by Matt here:<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=8970.1<br />
<br />
STEP import bug fix - Fixed import bug for file MF2018.STEP getting stuck at 36%, reported on the forum by Marco here:<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=8966.9<br><br />
Also fixed a different STEP import bug reported by Eric Bucy through e-mail.<br />
<br />
Fixed file loader UI bug - Fix bug where main window would not maximize properly when trying to show progress bar UI before main window was initially displayed, such as when MoI launched by double clicking a STP file. Fixes bug reported in the forum by OSTexo here:<br><br />
OSTexo http://moi3d.com/forum/index.php?webtag=MOI&msg=8966.40<br />
<br />
File notes - Add notes property that is saved to and loaded from .3dm files. Can be accessed by setting up a shortcut key with:<br><br />
script: moi.ui.createDialog( 'moi://ui/NotesDialog.htm', 'resizeable' );<br />
<br />
Viewport right click option - Add option for v3 behavior of right clicking in a viewport working as a shortcut for pushing the Cancel button when a command only has Cancel and not Done. Can be set in moi.ini under:<br><br />
[View]<br />
DoRightClickCancel=y<br />
<br />
Add new appdata directory option - MoI will now look for an appdata directory that has been created alongside "commands", "ui", etc... and if found will use that location as the appdata folder, to make it possible to store everything within a single directory.<br />
<br />
Add moi.ini setting for selection hit test radius<br><br />
[View]<br><br />
SelectionHitTestRadius=12<br><br />
<br />
Scene browser scripting - Added script access to scene browser items so it is possible to make a startup script that expands sections on program startup. To do that put the following in a .js file in your Moi appdata startup folder:<br><br />
var items = moi.ui.sceneBrowser.rootItems;<br><br />
for ( var i = 0; i &lt; items.length; ++i )<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;items[i].expanded = true;<br />
<br />
<br />
== Oct-17-2018 ==<br />
<br />
[http://moi3d.com/forum/index.php?webtag=MOI&msg=9100.1 Forum announcement]<br />
<br />
The main focus for this beta is a polygon sub-d surface to NURBS conversion method, available on the side pane under SubD > Create > From file. This allows you to open an .obj file that contains a sub-d polygon cage and have it converted to a high quality NURBS object in MoI.<br />
<br />
Some other stuff:<br />
<br />
Settings for page size are now available in PDF/AI exports.<br />
<br />
Fixed crash bug when modifying display mesh angle.<br />
<br />
Updated STEP export to fix problem with object names not coming through to SolidWorks, Fusion360 and KeyShot.<br />
<br />
Added moi.ini option to set current file name with foreign file types. In moi.ini under [Settings] SetNameWhenOpeningAllFileTypes=y When set, the current file name is set for all file opens not just .3dm files. Requested by Alex on the forum here: http://moi3d.com/forum/index.php?webtag=MOI&msg=9044.41<br />
<br />
Updated DXF export to allow the dialog to be suppressed and options set by script. Parameters that can be set are:<br><br />
// DXF export function parameter options:<br><br />
//<br><br />
// NoUI=true<br><br />
// ExportType=2d | 3d<br><br />
// ProjectionView=top | 3d | front | right<br><br />
// WriteCurvesAs=splines | cubicsplines | polylines<br><br />
// PolylineAngleDegrees=10.0<br><br />
// UseSimpleEntities=true<br><br />
// NumDecimalPlaces=12<br><br />
//<br><br />
// GenerateHiddenLines=false<br><br />
// HiddenLineLayerMode=fromstyle | custom<br><br />
// HiddenLineLayerName=Hidden lines (layer name to use when layer mode = custom)<br><br />
// IgnoreTangentEdges=false<br><br />
// Resolution=25.0<br><br />
<br />
<br />
== Feb-27-2019 ==<br />
<br />
[http://moi3d.com/forum/messages.php?webtag=MOI&msg=9266.1 Forum announcement]<br />
<br />
New stuff:<br />
<br />
Numerous fixes for SubD import crashes and translation issues.<br />
<br />
Fix for SubD imports on objects of small scale.<br />
<br />
Fix for SubD imports with meshes that have multiple volumes that partially overlap each other. Previously these could sometimes not get separated into different solids properly.<br />
<br />
Update SubD import to read materials from the .obj file and make Styles from them in MoI. Also patch combining will pay attention to material assignments<br />
so patches will not get combined across different materials. Can be disabled under Options > Import/Export > SubD import options > "Use materials" checkbox.<br />
<br />
Add SubD import option for either fewer patches but with denser surface control points, or more patches around extraordinary vertices but with fewer surface<br />
control points in regular areas of the mesh. Set under Options > Import/Export > SubD import options > "Patch type".<br />
<br />
Update multiple selection - Add option for doing multiple selection only when shift key is down. Options > General > Multiple selection: "Always" or "Only when Shift is down".<br />
<br />
Fix cylinder boolean union bug. There was a bug with combining cylinders in boolean union when the cylinders had opposite axis directions. This was the cause of some occasional mysterious missing fillets where the fillet surface was ending up displaced some distance away from the trim boundaries.<br />
<br />
Fix a sporadic crash in Chamfer reported through e-mail by Sebastian Bielecki.<br />
<br />
Fix crash in center object snap after copy/pasting an arc edge curve.<br />
<br />
Update tesselator - fix degenerate span display bug. Fixes bug in mesher for making display meshes on surfaces with nearly degenerate spans. Fixes a bug reported through PM by BarryH.<br />
<br />
Add option for scaling STL export to target unit system. Under Options > Import/Export > STL Options > "Export units conversion".<br />
<br />
Update curve filleting - Enable "Constant distance" fillet mode for curves, currently only works for line segments.<br />
<br />
Fix 3DConnexion buttons bug where undo/redo on space mouse button presses was not working, reported by Ivan in the forum here: http://moi3d.com/forum/index.php?webtag=MOI&msg=9130.1<br />
<br />
Update command parameter parsing. Allow quotes to control parameter parsing so values with spaces can be used, for example: ArrayDir mode="Extent, Count" . Fixes a problem reported on the forum by Bravlin here: http://moi3d.com/forum/index.php?webtag=MOI&msg=6087.75<br />
<br />
Update shortcut keys parameters - start and end scripts. Make it possible for shortcut keys to define parameters for oncommandstart="" and oncommandend="" for script to run at the start or end of the command. For example this shortcut will run a script when the line command ends to select it: line oncommandend="moi.geometryDatabase.selectLastCreated();"<br />
<br />
Update shortcut keys for file commands. Enable controlling the file dialog file type with keyboard shortcuts by adding a filetype= option in the shortcut key. For example a shortcut key with: Open filetype=igs will make the file dialog have the .igs file type active. Can be used with Open, SaveAs, Import, and Export commands. Requested in the forum by Peticel here: http://moi3d.com/forum/index.php?webtag=MOI&msg=9118.1<br />
<br />
Update command UI automation - ordering. Some UI events cause the command to finish, so to be able to control a command the ordering of the events needs to be controllable.<br />
Rework the UI event triggering so they are triggered in the order given in the command line parameters. This makes the following possible:<br><br />
extrude tapered draftangle=20 distanceinput=10<br><br />
Previously that didn't work because the distanceinput is earlier in the UI and so got triggered earlier and ended the command before tapered or draftangle could be processed.<br />
<br />
Fix properties panel line length editing bug reported through e-mail by Tim Hickox.<br />
<br />
Fix tolerance bug that could cause small sized objects to get mangled boundaries when joined, regression from v3.<br />
<br />
Fix IGES import joining regression - Make iges entity 128 surfaces join together if joining is enabled, regression from v3.<br />
<br />
Updated IGES import joining - allow T junctures to join instead of only simple matching endpoints only.<br />
<br />
Fix IGES import bug for some cases with edges on seams of closed surfaces. Fixes an IGES file sent through e-mail by Charles Ludeke.<br />
<br />
Fix excessive load time with STEP file that had a degenerate surface in it.<br />
<br />
Update license key file paths - Allow a path to moi_v3_license.key to be passed as a command line parameter or set as an environment variable<br />
like moi_v3_license.key=path . Requested by Mariusz in the forum here: http://moi3d.com/forum/index.php?webtag=MOI&msg=9106.1<br />
<br />
If straight snap snap angle is set to 0, disable x/y plane straight snap line snapping.<br />
<br />
Add warning if running on Mac case sensitive file system.<br />
<br />
Update file dialogs - Save and restore last used file dialog location on all platforms.<br />
<br />
Update file loader progress bar - Add full path as tooltip to file name label.<br />
<br />
Add option for limiting the number of CPU cores used by file loading. Can be set under: [Settings] FileLoaderThreadLimit=x<br />
<br />
Update scripting - exe command line args<br><br />
moi.getExecutableCommandLineArgs() - returns list of command line parameters for launching the executable.<br><br />
moi.geometryDatabase.initialFileToLoad - filename for initial file to load by executable command line parameter.<br />
<br />
Scripting - Add moi.command.currentCommandName property for getting the current running command name by script, or empty string if no command currently running. Requested by Bravlin on the forum here: http://moi3d.com/forum/index.php?webtag=MOI&msg=7238.61<br />
<br />
Update Scene Browser, Types > Edges and Types > Faces behavior. Don't show edges or faces of hidden breps unless shift is down. Makes it easier to turn edges on/off without hidden breps being shown. Requested through e-mail by Tim Hickox<br />
<br />
Update scene browser - Make sure scene browser is initialized before any startup script that wants to access it is run.<br />
<br />
Scene browser script access - Add more script access to SceneBrowser: sceneBrowser.objects, sceneBrowser.types, and sceneBrowser.styles to get the root item for those sections.<br><br />
Added methods to a scene browser item:<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;item.find('name') - will search all children and return an item with that name or null if none present.<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;item.alterStatus(mode,rightclick) - alter the status area of an item, that's the one with the eye icon. Mode can be one of 'show','hide','lock','unlock'. Optional boolean parameter for rightclick will make it behave like a right mouse button click.<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;item.select(mode,rightclick) - alter the selection dot of an item. Mode can be one of 'toggle','select','deselect','filteron','filteroff'. Optional boolean parameter for rightclick will make it behave like a right mouse button click.<br><br />
Here's an example that toggles the selection dot for the Blue item under styles: moi.ui.scenebrowser.styles.find('Blue').select('toggle');<br />
<br />
Fix selection redraw bug on static objects where objects could get stuck looking like they were selected in the Intersect, Project, Silhouette, Join, and Separate commands. Reported through e-mail by James Elliott.<br />
<br />
Fix bug in Add pt with rational curves, reported in the forum by Bravlin here: http://moi3d.com/forum/index.php?webtag=MOI&msg=9216.34<br />
<br />
Fix for wrong selection display on iMac with NVIDIA GeForce GT 750M 1024 MB - work around driver bug.<br />
<br />
Fix for mouse move events getting stacked up on some Mac machines.<br />
<br />
Fix .skp and .fbx format export with unicode file names on Mac. Exporting to .skp or .fbx formats with certain kinds certain kinds of extended characters in the filename would fail.<br />
<br />
Update filename display Mac - Fix bug where filenames with <> characters were being treated as html tags.<br />
<br />
Fix MRU file list Mac - Fixed bug where on Mac if a file had a \ in it, it would not persist to the MRU list properly.<br />
<br />
Fix Mac crash when exporting to .3ds format.<br />
<br />
Fix QtWebKit Ctrl/Meta flippage on Mac. Make the HTML event object use Ctrl for Ctrl and Cmd for Cmd instead of flipped on Mac.<br />
<br />
Turn off viewport display time that was previously always on.<br />
<br />
Update mouse wheel for node editor - dispatch wheel events to canvas elements.<br />
<br />
Fix bug in <moi:Select> control when the <moi:Select> element had keyboard focus when the command UI document was torn down. Fixes bug reported by Bravlin on the forum here: http://moi3d.com/forum/index.php?webtag=MOI&msg=952.31<br />
<br />
Add setting for allowing snap plane change in ortho:<br><br />
[Drawing Aids]<br><br />
AllowSnapPlaneChangeInOrtho=y<br><br />
When set the orientation picker will align to surfaces in ortho views, by default it only aligns to surfaces in the 3D view.<br />
<br />
Update viewport text - fallback fonts. Switch to a fallback font if the regular UI font does not contain glyphs that we are going to be using in the viewport. This enables stuff like Japanese text to render properly in the viewport even if the UI font has not been set to a font with Japanese glyphs in it.<br />
<br />
Update Wine hit testing BGRA textures. Add option to use BGRA for the texture format for off-screen rendering. Make it used by default when running under Wine. Hopefully will solve selection problems where hit test map had unexpected byte ordering on the propietary Nvidia driver, as reported by Ronnie Ashlock.<br />
<br />
Add option to use same color picker dialog as v3 on Windows. Can be set under<br><br />
[Color Dialog]<br><br />
UseV3ColorDialog=y<br><br />
Requested by Barry-H in the forum here: http://moi3d.com/forum/index.php?webtag=MOI&msg=9100.241<br />
<br />
Update scripting moi.view.resetAll() - Update moi.view.resetAll() to take an optional parameter. Can be one of:<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;'auto' - Do automatic toggle between selected or all.<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;'selected' - Only reset to selected objects.<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;'all' - Only reset to all objects.<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;'default' - Reset to default startup views, keeping reversed views (bottom/back/left).<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;'harddefault' - Reset to startup views and get rid of reversed views (bottom view will become top).<br><br />
Requested on the forum by arial here: http://moi3d.com/forum/index.php?webtag=MOI&msg=8123.39<br />
<br />
Update edit style shortcut. Make Ctrl+Left click on the style line in the properties panel also work as a style edit shortcut in addition to right-click. Requested by shane in the forum here: http://moi3d.com/forum/index.php?webtag=MOI&msg=9245.5<br />
<br />
Add moi.ini option for window select behavior.<br><br />
[Selection]<br><br />
WindowSelectMode_Combo_Intersect_Contained=Combo<br><br />
Can be one of "Combo", "Intersect", or "Contained".<br />
<br />
Update mesh export - allow generating empty mesh files when saving to OBJ, STL, 3DS, LWO, FBX, or SKP mesh formats. Requested by Mikael Sundell for pipeline integration.<br />
<br />
<br />
== Oct-10-2019 ==<br />
<br />
[http://moi3d.com/forum/index.php?webtag=MOI&msg=9526.1 Forum announcement]<br />
<br />
The primary focus for this release is a new detailed object properties dialog and new annotation/dimension tools on the "Dim" tab in the side pane.<br />
<br />
The new extended properties dialog is triggered by the "Details..." button in the Properties Panel here:<br />
<br />
http://moi3d.com/forum/get_attachment.php?webtag=MOI&hash=f48bc5937a8f8647858ee122f26fd746&filename=detailed_object_properties1.png<br />
<br />
The Type: section of the detailed object properties dialog will give some additional information about the object type:<br />
<br />
http://moi3d.com/forum/get_attachment.php?webtag=MOI&hash=f523480b2b9504254b2208f7bdadf912&filename=detailed_object_properties2.png<br />
<br />
For curves it will report if it is an open curve or closed curve, whether it has the shape of a line, polyline, circle, arc, ellipse, elliptical arc, whether it is planar and the number of segments in the curve.<br />
<br />
For surface/solid objects it will report if it is a solid, open joined surface, or open individual surface, if it is a planar surface, the number of joined edges, number of naked edges, and number of faces.<br />
<br />
For edges it will report open, closed, joined, naked, line, circle, ellipse, elliptical arc, and planar.<br />
<br />
For a face selected it will report if it is a planar face.<br />
<br />
For an annotation selected it will report if it is a linear dimension, radial dimension, angular dimension, leader, or annotation text.<br />
<br />
When multiple objects are selected it will make a combined report like this:<br />
<br />
http://moi3d.com/forum/get_attachment.php?webtag=MOI&hash=a41d725c0dbdec497aebe4b79123c060&filename=detailed_object_properties3.png<br />
<br />
The type labels can be clicked on to filter the selection down to just the objects that match that label:<br />
<br />
http://moi3d.com/forum/get_attachment.php?webtag=MOI&hash=2dfca899ad8b98dc077ef0274ccf96d7&filename=detailed_object_properties4.png<br />
<br />
You can also hold down the shift key which will allow you to click multiple labels and the filtering will be triggered when you release the shift key. Holding down the Ctrl key while clicking on a label will remove its objects from the selection.<br />
<br />
Lower down on the dialog there are sections for Curve properties, Solid or surface properties, and Annotation properties if any of those types of objects are selected:<br />
<br />
http://moi3d.com/forum/get_attachment.php?webtag=MOI&hash=a2c2884805bea74d3f1008fa82fa241f&filename=detailed_object_properties5.png<br />
<br />
There you can calculate the length of curves, the surface area or volume of a surface or solid, and adjust properties for annotation objects.<br />
<br />
When you click the "Calc" button to calculate a value the button will be replaced with a numeric value and a small "Copy" icon will appear next to it. You can click on the value to copy it to the system clipboard.<br />
<br />
<br />
The other major new feature area are annotation objects which can be used to add dimensions and text to your model to use for documentation.<br />
<br />
These are added by 7 new commands in the Dim tab on the side pane here:<br />
<br />
http://moi3d.com/forum/get_attachment.php?webtag=MOI&hash=3ac8aa861ce0381ee8a301bb1f7eda82&filename=dim_tab.png<br />
<br />
The DimHorizontal command creates a linear dimension going in the x-axis direction of the construction plane:<br><br />
http://moi3d.com/forum/get_attachment.php?webtag=MOI&hash=adade4b11952793ad9e912e04ac1ee9d&filename=DimHorizontal.png<br />
<br />
The DimVertical command creates a linear dimension going in the y-axis direction of the construction plane:<br><br />
http://moi3d.com/forum/get_attachment.php?webtag=MOI&hash=c594a4d2c93cbc4b594fcc9482ab43ca&filename=DimVertical.png<br />
<br />
The DimAligned command creates a linear dimension going in any direction on the construction plane:<br><br />
http://moi3d.com/forum/get_attachment.php?webtag=MOI&hash=794f907b2a85dfc93ea5462f919680fa&filename=DimAligned.png<br />
<br />
All 3 of the linear dimension commands have a "From object" button in their command options which you can trigger to take the start and end point of a curve as the first 2 points of the dimension.<br />
<br />
The DimRadius command creates a radial dimension on a circle or arc curve:<br><br />
http://moi3d.com/forum/get_attachment.php?webtag=MOI&hash=3fe29174d3a44247c189f098635089bf&filename=DimRadius.png<br />
<br />
The DimAngle command creates an angular dimension on the construction plane. There is a "From lines" button in its command options which will allow you to select 2 line objects instead of picking points.<br><br />
http://moi3d.com/forum/get_attachment.php?webtag=MOI&hash=899daa66d11473a80215ced67ec3707f&filename=DimAngle.png<br />
<br />
The Leader command creates a leader object which is a text label with an arrow.<br><br />
http://moi3d.com/forum/get_attachment.php?webtag=MOI&hash=3e412e15007311c6f216db34d71e1907&filename=Leader.jpg<br />
<br />
The AnnotationText command creates an annotation text object which is a text box by itself, no arrows.<br />
<br />
Annotations are currently only saved to and from .3dm files. Saving them to DXF and PDF/AI files will be upcoming.<br />
<br />
There is an option in moi.ini for changing the display appearance of arrowheads in annotations by disabling mitered arrowhead tips:<br><br />
[Annotations]<br><br />
MiterArrowheads=y<br />
<br />
<br />
Other bug fixes and updates:<br />
<br />
Update FBX export - FBX version, object names, and materials. Add option for which FBX version to use under Options dialog &gt; Import/Export &gt; FBX options &gt; FBX version. Object names are now written to the FBX files instead of only generic "object1", "object2", ... names and styles are now written as materials in the FBX export. Writing materials can be disabled in moi.ini under [FBX Export] WriteMaterials=n<br />
<br />
Added SubD import option for open boundaries behavior under Options &gt; Import/Export &gt; SubD import options. Can be one of "Open boundaries: Keep corners" or "Open boundaries: Rounded". The default is "Keep corners" as per the discussion on the forum here:<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=9274.1<br><br />
It can be set to "Open boundaries: Rounded" to return to the previous beta's behavior at open boundary areas.<br />
<br />
Update DXF/PDF/AI hidden line layer controls. Add an optional prefix and/or suffix to be added to the style name when generating a 2D hidden line drawing to DXF/PDF/AI formats. Requested on the forum by miquik here:<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=9418.1<br />
<br />
Update view tabs - enable right click to get reverse views. Requested by Juraj in the forum here:<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=9473.10<br />
<br />
Add option in moi.ini for zooming using Shift+MMB:<br><br />
[View]<br><br />
ShiftMMBZoom=y<br />
<br />
Update file dialog filters. Make "All supported files" the first item in the file open filter list on both Windows and Mac (previously it was only on Mac). So that will be the default filter when the file dialog is first opened. This can be reverted to the previous behavior by a setting in moi.ini :<br><br />
[FileDialog]<br><br />
AllSupportedAtBottom=y<br><br />
Requested by agonyii in the discussion forum here:<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=9387.1<br />
<br />
Add moi.ini option for LWO export to not write styles as materials/surfaces in the LWO file.<br><br />
[LWO]<br><br />
WriteMaterialAssignments=y<br />
<br />
Fix bug with meshing dialog settings not being saved. Reported by stefan in the newsgroup here:<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=9266.51<br />
<br />
Fix Options dialog sub dialogs not displaying in full screen mode on macOS Mojave. Simplify dialog window z-ordering on Mac to avoid Mojave bug and hopefully be more resilient against any future Mac child window behavior changes. Reported by Martin in the forum here:<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=9443.1<br />
<br />
Fix improper mouse coordinate scaling on Mac w/Retina. Fix bug with longer distance delay before rotate/pan engages with V4 compared to V3, reported on the forum by Nis here:<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=9266.200<br />
<br />
Fix PDF export crash bug reported on the forum by Mip here:<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=9266.144<br />
<br />
Fix crash with some extended combination keystrokes such as Ctrl+Alt+Win+Numpad1 (QTBUG-36061). Fixes a crash bug reported through e-mail by Mark Tomlinson.<br />
<br />
Fixed a crash in display meshing with a file reported through e-mail by Bodo-Lutz.<br />
<br />
Fix crash in node editor revolve with small angle value, reported by Pilou in the forum here:<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=9476.119<br />
<br />
Updated HarmonyWare libs for STEP, SAT, and IGES file I/O from version 2.1.0 to 2.1.4, various bug fixes.<br />
<br />
Update STEP import/export - face colors. Support per-face colors for STEP file import and export. Fixes STEP import color bug reported on the forum by Fran6 here:<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=9339.4<br />
<br />
Fix 3DM import bug with incorrect circle orientation when reading 3DM files from CAD Exchanger. Fixes mangled import of mould.quadlobe.toy reported on the forum by LarryV here:<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=9266.164<br />
<br />
Update Construct &gt; Curve &gt; Isect "Curve from 2 views". Allow lines to be used as input for curve from 2 views, requested by Przemas in the forum here:<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=9440.1<br />
<br />
Update Trim - "stencil cut" options. Add options to Edit &gt; Trim for deleting the cutting objects and for having a joined together result with "keep all" instead of always separarting into pieces. Requested on the forum by Przemas here:<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=9436.1<br />
<br />
Fixed bug where left-click on style line of properties panel behaved the same as the right click shortcut for editing the style rather than putting up the style picker menu. Reported in the forum by Ralf here:<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=9266.22<br />
<br />
Update selection texture readback on Wine - test for Nvidia driver bug with red/blue bytes swapped and compensate. Also add calls to glFinish() on Wine to try and help avoid some other Nvidia driver bugs on Linux/Wine.<br />
<br />
Update command object model for properties undo. Add moi.command.addSelectedObjectsStateUndoUnit(); that can be called by a command that only modifies properties and doesn't add or delete objects, to get undo support.<br />
<br />
Add script properties to Face objects:<br><br />
face.domainMin : Property that returns u,v coordinate of the lower left of the surface's parameter range.<br><br />
face.domainMax : Property that returns u,v coordinate of the upper right of the surface's parameter range.<br><br />
face.evaluatePoint( uv, u_from_left, v_from_left ) : Function that evaluates a uv parameter value and returns a 3D point.<br><br />
face.evaluateNormal( uv ) : Function that evaluates a uv parameter value and returns a normal vector.<br><br />
face.evaluate1stDerivatives( uv, u_from_left, v_from_left ) : Function that evaluates a uv parameter value and returns first derivatives as a list containing [pt, du, dv, duv].<br><br />
face.evaluate2ndDerivatives( uv, u_from_left, v_from_left ) : Function that evaluates a uv parameter value and returns first and second derivatives as a list containing [pt, du, dv, duv, duu, dvv].<br><br />
face.isPlanar : Property that returns true if the surface is planar.<br><br />
face.planarFrame : Property that returns a coordinate from for a planar surface. Only valid if isPlanar returns true.<br><br />
face.isOnPlane( frame ) : Function that returns true if the surface is planar and is on the given coordinate frame's x/y plane.<br><br />
face.isOnParallelPlane( frame ) : Function that returns true if the surface is planar and is on a plane parallel to the given coordinate frame's x/y plane.<br><br />
<br />
<br />
== Jan-22-2020 ==<br />
<br />
[http://moi3d.com/forum/index.php?webtag=MOI&msg=9660.1 Forum announcement]<br />
<br />
New stuff:<br />
<br />
Added dimension property preset system for controlling initial properties of newly drawn dimensions.<br><br />
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 also create additional presets for project-specific settings.<br><br />
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.<br />
<br />
Implement sizing of the scene browser by dragging on its edge.<br />
<br />
Update dimensions arrowheads - Add option to position arrowheads to the outside, for linear dimension and angular dimension.<br />
<br />
Enable turning on edit points for annotations. This can be used to edit dimensions and also to reposition dimension text.<br><br />
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.<br />
<br />
Add circumference field. Add a circumference field in addition to radius/diameter for circle picking.<br><br />
Affects ArcTangent, Circle, CircleTangent, Cone, Cylinder, and Sphere commands. <br />
<br />
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.<br />
<br />
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.<br />
<br />
Add snap points on angular dimension objects<br />
<br />
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.<br />
<br />
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<br />
<br />
<br />
Fixed bug with dimension text getting distorted when coordinate values were larger than 2500.0<br />
<br />
Fix OBJ sub-d conversion crash when reading materials that had texture maps set up.<br><br />
Fixes a crash reported through e-mail by Phil Nolan.<br />
<br />
Fix sweep bug. History update with editing control points for Sweep was making unexpected results.<br><br />
Fixes bug reported in the forum by nameless here: http://moi3d.com/forum/index.php?webtag=MOI&msg=9526.196<br />
<br />
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.<br />
<br />
Fix bug with circle Tan Tan Radius reported through e-mail by Vladimir.<br />
<br />
Fix annotation window select bug - Leaders without any text were not working with window selection.<br />
<br />
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<br><br />
Fixes a bug reported in the forum by Axel here: http://moi3d.com/forum/index.php?webtag=MOI&msg=9615.1<br />
<br />
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.<br />
<br />
Update edge hit testing - Fix dead zone around outside of object with selection filters active. Fixes bug reported on the forum by Pior here:<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=8435.42<br />
<br />
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.<br />
<br />
Fixed annotation font picking bug that would cause the font size to grow to larger values on Mac just by opening the font dialog.<br />
<br />
Update detailed properties dialog styles. When multiple styles selected, list the styles.<br />
<br />
Fix annotation objects bounding box bug which caused Transform > Align to behave strangely with annotation objects. Reported by OSTexo on the forum here:<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=9526.11<br />
<br />
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:<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=9526.85<br />
<br />
Fix bug with Display: Wireframe mode on Meshing options dialog box not working. Reported on the forum by Schbeurd here:<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=9526.148<br />
<br />
Fix curve offset bug - Curve offset through point wasn't working correctly if closest point was at a tangent discontinuity.<br />
<br />
Show error dialog if trying to load a Rhino v6 or higher .3dm file.<br />
<br />
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:<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=9526.76<br />
<br />
Fixed bug where esc key could prevent hit testing from being reset on curve used for DimRadius. Reported through e-mail by Vladimir<br />
<br />
Update mesh dialog - Don't restore window corner position saved in moi.ini if the corner is not on a visible screen.<br />
<br />
Revert IGES import change - only use simple joins, not any vertex/edge splitting. Fixes regression reported on the forum by Will here:<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=9526.220<br />
<br />
Add moi.ini setting for showing grid in ortho views only, not the 3D view.<br><br />
[Grid]<br><br />
ShowGridInOrthoViewsOnly=y<br><br />
<br />
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 .<br><br />
Requested by Lestatdelc in the forum here:<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=9526.72<br />
<br />
Add moi.ini setting to disable selection edge flashing.<br><br />
[Selection]<br><br />
DisableSelectionEdgeFlash=n<br><br />
If set to =y then the edge flash feedback when selecting faces or breps will be disabled. Requested by Pior in the forum here:<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=8435.36<br />
<br />
Add moi.ini options for disabling preselection highlighting. In moi.ini under:<br><br />
[Selection]<br><br />
DisablePreselectionHighlighting=n<br><br />
DisablePreselectionHighlightingExceptCurves=n<br><br />
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:<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=8435.28<br />
<br />
Add moi.ini option to export FBX names as ascii [FBX Export] ConvertObjectNamesToAscii=y . Requested on the forum by Sven here:<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=9526.115<br />
<br />
<br />
scripting:<br />
<br />
Update view.setCameraAndTarget() function. Take an optional 3rd parameter of an "up" direction vector.<br />
<br />
Add script methods for dropping points:<br><br />
&nbsp;&nbsp;curve.dropPoint( pt ) - returns curve parameter value of closest point on the curve to the given 3D point.<br><br />
&nbsp;&nbsp;curvesegment.dropPoint( pt ) - returns curve parameter value of closest point on the curve segment to the given 3D point.<br><br />
&nbsp;&nbsp;face.dropPoint( pt ); - returns 2D uv coordinate point of closest point on the face to the given 3D point.<br><br />
&nbsp;&nbsp;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.<br><br />
<br />
Updated face.planarFrame() method for analytic planes to use the same x/y axis alignment that point picking snap plane uses.<br />
<br />
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.<br />
<br />
Add getEdgeIsoType script method<br><br />
Takes a parameter of which face to consider, an edge can be shared between 2 faces.<br><br />
var Iso = EdgeCrv.getEdgeIsoType( Face );<br><br />
Return value:<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;-1 : Edge is not an isocurve of the given face.<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;0 : Edge is an isocurve of the given face, going in the U direction.<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;1 : Edge is an isocurve of the given face, going in the V direction.<br />
<br />
<br />
== Sep-10-2020 ==<br />
<br />
[http://moi3d.com/forum/index.php?webtag=MOI&msg=9942.1 Forum announcement]<br />
<br />
Still not quite finished but really close! Exporting dimensions to PDF/AI formats is still in progress and almost there but I needed to release this new beta now because the current beta expires tomorrow. It has been quite a while since the last beta, please let me know if you see any new bugs surface in this release. It won't be much longer before v4 will be wrapped up.<br />
<br />
New stuff:<br />
<br />
Updated DXF - support import/export of dimension entities.<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;Import of TEXT, MTEXT, LEADER, and DIMENSION (linear, angular, radius/diameter sub types) is now supported. MoI will export dimensions to MTEXT, LEADER, and DIMENSION enties.<br />
<br />
Update annotations, add model units scaling behavior.<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;There is a new option for annotation behavior under Details > Annotation properties > "Scaling:" which has options for "Scaling: By screen size" or "Scaling: By model units".<br />
<br />
&nbsp;&nbsp;&nbsp;&nbsp;Scaling: "By screen size" works the same as the earlier v4 betas where text and arrowheads stay the same size on screen independent from the current zoom level.<br />
<br />
&nbsp;&nbsp;&nbsp;&nbsp;Scaling: "By model units" is a new option that makes the text and arrowheads to behave the same as geometry, where it is fixed at a certain unit size (given by the Height: field just after it) and will display larger or smaller when you zoom in and out. This option gives better compatibility with other CAD programs since almost all other programs work this way. When you import dimensions from DXF or from a 3DM file created in Rhino they will default to using this method so that things like title blocks where there are lines or other geometry making a table with text inside it will work as expected.<br />
<br />
Finished the AnnotationText and Leader command dialogs.<br />
<br />
Updated show points for dimension leader. Allow delete of selected edit points for leader objects.<br />
<br />
Handle file write errors - an error dialog will show now on file write failures like if the system ran out of disk space or permission denied.<br />
<br />
3DConnexion updates:<br><br />
&nbsp;&nbsp;&nbsp;&nbsp; - Updated 3dx default speed on Windows. On Windows 3dx translation and rotation speed was too fast, implement same default speed as Mac.<br><br />
&nbsp;&nbsp;&nbsp;&nbsp; - Add "Reverse roll" setting in Options dialog under Options > View > Rotate/Pan/Zoom options > 3DConnexion options. Requested by Fred in the forum here:<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;http://moi3d.com/forum/index.php?webtag=MOI&msg=9660.30<br><br />
&nbsp;&nbsp;&nbsp;&nbsp; - Also added individual settings for reversing twist or tilt in moi.ini, under:<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;[3Dconnexion]<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;&lt;...&gt;<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;ReverseTwist=y<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;ReverseTilt=y<br />
<br />
Update SaveAs to STEP/IGES/SAT formats for hidden objects.<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;By default don't write hidden objects to STEP/IGES/SAT formats when doing a SaveAs, unless turned on in moi.ini under:<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;[NURBS Export]<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;WriteBlankedObjects=y<br><br />
<br />
&nbsp;&nbsp;&nbsp;&nbsp;Also fixed regression in v4 where the blanked flag for hidden objects was not being set on IGES and SAT export.<br />
<br />
Update History<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;Enable face extrudes and the Rebuild command to trigger history updates.<br />
<br />
Curve offset overhaul - Improve curve offset robustness:<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;1 - when extending a line make a new analytic line as the result and use an analytic line/line intersection when possible for more accuracy.<br><br />
<br />
&nbsp;&nbsp;&nbsp;&nbsp;2 - Update how convex corner processing is done to avoid getting little loops which could confuse trim classification and were not getting trimmed out with shallow angle polylines as reported on the forum by Yanik here:<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;http://moi3d.com/forum/index.php?webtag=MOI&msg=9660.47<br />
<br />
&nbsp;&nbsp;&nbsp;&nbsp;3 - Do a better job of selecting intersections and screening out wild results from G2 reflection type extension. Should eliminate crazy looping extensions.<br />
<br />
Update grid axis display colors<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;Add in Z axis color option under Options > Grid. Grid axis lines are now colored according to their 3D orientation, so for example if you set the Z axis color to blue, then the vertical axis line in the front view will be colored blue. Previously the grid axis lines were colored the same in all viewports. You can re-enable that previous way by a setting in moi.ini :<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;[Grid]<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;<...><br><br />
&nbsp;&nbsp;&nbsp;&nbsp;UseOldStyleGridAxisColors=y<br />
<br />
&nbsp;&nbsp;&nbsp;&nbsp;Also added in an option for displaying the z axis grid line in the 3D view, under Options > Grid > "Show grid z axis in 3D view" checkbox.<br />
<br />
Update IGES export<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;Add an option under Options > Import/Export > IGES options > "Write solids as" for writing out solids as either an IGES type 186 "Manifold Solid B-Rep" entity or whether to write them as individual separate surfaces as MoI v3 and earlier always did.<br />
<br />
Update Draw solid > Text command - font styles<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;Add a Style: option to the Draw solid > Text command to make it possible to access styles of the font other than bold/italic. Requested on the forum by Javier here:<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;http://moi3d.com/forum/index.php?webtag=MOI&msg=8766.1<br />
<br />
Update error message when command not found.<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;Pop up a "command not found" dialog instead of a script exception dialog if trying to exec a command that was not found in any command folder.<br />
<br />
Update Help > About dialog<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;Add links for showing license keys and EULA from Help > About dialog. The license key dialog also has an option to clear out license keys.<br />
<br />
Detailed object properties dialog<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;Implement undo for annotation property changes in detailed object properties dialog.<br />
<br />
Update detailed properties panel types report<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;Add reports for all curves, all edges, and all brep edges if there is a mix of different types so there is one label that can be targeted for grabbing all edges or all curves instead of needing to shift+click on both "Open curves" and "Closed curves" for example.<br />
<br />
Add scale factor option for SubD import, in moi.ini<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;[SubD Import]<br />
&nbsp;&nbsp;&nbsp;&nbsp;ScaleFactor=1.0<br />
&nbsp;&nbsp;&nbsp;&nbsp;requested by Tudor in the forum here:<br />
&nbsp;&nbsp;&nbsp;&nbsp;http://moi3d.com/forum/index.php?webtag=MOI&msg=8665.109<br />
<br />
Update annotations bounding size<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;Don't include annotations in the bounding size for the edit frame or the properties panel, unless only annotations are selected.<br />
<br />
&nbsp;&nbsp;&nbsp;&nbsp;There is a moi.ini option to include annotations always in these sizes:<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;[Annotations] IncludeAnnotationsInBoundingBox=y<br><br />
&nbsp;&nbsp;&nbsp;&nbsp; <br />
&nbsp;&nbsp;&nbsp;&nbsp;Discussed in the forum here:<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;http://moi3d.com/forum/index.php?webtag=MOI&msg=9526.30<br />
&nbsp;&nbsp;&nbsp;&nbsp;<br />
Update persistence of "Mesh angle" option.<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;On startup, clamp the value for Options > View > Meshing parameters > Mesh angle to be between 10 and 45 degrees. It can be set lower by a startup script.<br />
<br />
Update annotation text display - substitution fonts<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;Enable use of substitution fonts in annotation text rendering. This will automatically switch to a fallback font if the current font does not have glyphs for unicode text characters being displayed.<br />
<br />
Update sub-d import<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;Use mesh object name in sub-d obj file conversion, and merge styles with the same names and colors. Requested in the forum by pafurijaz here:<br />
&nbsp;&nbsp;&nbsp;&nbsp;http://moi3d.com/forum/index.php?webtag=MOI&msg=9660.142<br />
<br />
Update edit styles dialog.<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;Show gray text on styles with nothing assigned to them same as the scene browser. Requested by pafurijaz in the forum here:<br />
&nbsp;&nbsp;&nbsp;&nbsp;http://moi3d.com/forum/index.php?webtag=MOI&msg=9660.148<br />
<br />
Update object dragging<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;Option for disabling object dragging so clicking on objects will only do selections and not any drags.Set under moi.ini under:<br />
&nbsp;&nbsp;&nbsp;&nbsp;[Selection]<br />
&nbsp;&nbsp;&nbsp;&nbsp;<...>'<br />
&nbsp;&nbsp;&nbsp;&nbsp;DisableObjectDrag=y<br />
<br />
<br />
<br />
Bug fixes:<br />
<br />
Fix window un-maximize bug on Windows - Fixed bug where the restored window position used for un-maximizing a window would keep growing larger on every run.<br />
<br />
Updated selection with filters on - if a selection filter is active, when clicking on an edge or face object to select it do the selection update immediately on the mouse press instead of mouse release. Fixes a bug reported by pior in the forum here:<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=9660.24<br />
<br />
Updated hit testing. Fixed bug where edge boost for selected breps was happening even for objects with selection lock on them. So in the case of boolean difference, the base object was having its edges boosted over top of any standalone curves in the same spot, preventing them from being selected. Fixes a bug reported through e-mail by Vladimir.<br />
<br />
Fixed annotation text bugs with text anchor property. The text anchor property was not persisting properly for all values.<br />
<br />
Fixed a bug with importing a DEGENERATE_TOROIDAL_SURFACE surface type through STEP format.<br />
<br />
Fixed a chamfer/fillet bug with skinny surfaces. If a chamfer surface was skinny (less than 10*tolerance across) it was possible for the chamfer surfaces to get connected improperly since it took just the first one within tolerance instead of the closest one.<br />
<br />
Fixed a bug with keyboard shortcut handling on Mac with a Japanese keyboard. Reported on the forum by nemuneko here:<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=9660.39<br />
<br />
Fixed shortcut key bug where cpaslock key was being interpreted as the letter "A" key.<br><br />
Reported on the forum by nemuneko here: http://moi3d.com/forum/index.php?webtag=MOI&msg=9660.39<br />
<br />
Fixed bugs with dialog size and positioning.<br><br />
Previously when showing a resizable dialog, if there was a saved size from a previous use it would restore that same size. The bug from that was if the dialog size was done on a high resolution monitor and now the use has switched to a different screen the saved dialog size could exceed the current screen resolution. Fixed by limiting saved dialog width and height by current screen size. Also if a saved position for a dialog will be used, check if it is visible on screen before using it. Additionally, don't allow resizable dialogs to shrink to down 0 width or height. Fixes bugs reported through e-mail by James.<br />
<br />
Fixed sweep bug - Freeform sweep framing had a bug when rail segments were anti-tangent. Fixes a bug reported through e-mail by Pilou.<br />
<br />
Updated dimension text rendering - Y positioning for glyphs used incorrect rouning. Was causing noticeable mis-positioned glyphs when using Gill Sans 18 pt font on Mac. Fixes a text display bug reported through e-mail by James.<br />
<br />
Variable radius filleting - linear blend fix. Fixed a bug in variable radius filleting with "linear blend" option where fillet surfaces were not being extended properly. Fixes a bug reported on the forum by Dan R here:<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=9753.1<br />
<br />
Fixed arrowhead bug - outside dimension arrowhead lines not placed correctly on larger scaled objects. Fixes a bug reported through e-mail by James.<br />
<br />
Fixed dimension feet & inches display - for feet&inches, check if the font does not support any Unicode fraction characters being used and if not replace with long form text like 1/2.<br />
<br />
Fixed STEP/IGES import of composite curve entities with G0 discontinuities. Look for G0 discontinuities in imported curves and break those out to separate curves.<br />
<br />
Fix file dialog bug - Fix bug where file open dialog called by script was not returning empty string when canceled. Fixes node editor bug reported in the forum by Wayne here:<br><br />
http://moi3d.com/forum/messages.php?webtag=MOI&msg=7713.880<br />
<br />
Fix Extrude bug with end caps disabled - When making a curve extrude with end caps disabled, a brep with disjoint shells would be created if there were any interior holes in the extrusion.<br />
<br />
Update sweep - true up rail segment ends. If segment end tangents are within 2 degrees of tangent, true them up to be exactly tangent if possible. This can improve corner mitering fails with segments that are nearly G1 but not quite. Fixes bug reported through e-mail by Salvatore.<br />
<br />
Fix curve fillet bugs -<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;Fix curve filleting bug reported by Cemortan_Tudor in the forum here:<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;http://moi3d.com/forum/index.php?webtag=MOI&msg=8665.97<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;and also another curve filleting bug reported a long time ago in the forum by macray here:<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=4958.1<br />
<br />
Fix select last created not working with drag/copy. Reported by Tudor in the forum here:<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=8665.115<br />
<br />
Fix bug in orient line / line<br><br />
Fix bug when line directions pointing opposite each other. Fixes a bug reported in the forum by Karsten here:<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=9476.422<br />
<br />
Fix file dialog crash on Mac Catalina OS<br><br />
Implement fix for QTBUG-83342 for an OS bug that could cause the file dialog to crash on Mac Catalina OS.<br />
<br />
<br />
Scripting updates:<br />
<br />
Added Curve.getIsTangentEdge( AngleToleranceDegrees /* optional, default = 2 degrees */ );<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;- returns true if the 2 surfaces on either side of the edge are tangent to each other.<br />
<br />
Added CurveSegment.getIsG1ToAdjacentSegment( 0 /* 0 for start, 1 for end */ );<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;- returns true if the next segment at the start or end is smooth to the current curve segment.<br />
<br />
moi.filesystem.shellExecute(), added wait for finished parameter.<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;moi.filesystem.shellExecute( path, params, wait ) now takes an optional 3rd boolean parameter for whether to wait until the called process has exited before returning. When used, the return value from shellExecute() is an object containing an .exitCode property for the integer exit code of the called process and an .output string parameter for any text written by the called process to stdout.<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;Example:<br />
&nbsp;&nbsp;&nbsp;&nbsp;var res = moi.filesystem.shellExecute( 'cmd /c dir c:\\', '', true );<br />
&nbsp;&nbsp;&nbsp;&nbsp;if ( res.output ) moi.ui.alert( res.output );<br />
<br />
Updated geometryDatabase::addObject()<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;Ignore the add if the given object is already in the geometry database. Fixes node editor bug reported by Brian here:<br />
&nbsp;&nbsp;&nbsp;&nbsp;http://moi3d.com/forum/index.php?webtag=MOI&msg=7777.1668<br />
<br />
Add face.isNew and curve.isNewEdge properties.<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;These will be set to true if the face or edge was newly generated instead of coming from a copy or split off piece of an original one.<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;example:<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;script: /* Select new edges at intersections after a boolean command */ moi.geometryDatabase.deselectAll();<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;var breps = moi.geometryDatabase.getLastCreated().getBReps(); for ( var i = 0; i < breps.length; ++i )<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;{ var edges = breps.item(i).getEdges(); for ( var j = 0; j < edges.length; ++j ) { var e = edges.item(j);<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;if ( e.isNewEdge ) e.selected = true; } }<br><br />
<br />
Add moi.geometryDatabase.getLastCreated(); - get an object list of the objects that were created by the last run command.<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;Example:<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;script: /* Select fillet surfaces */ moi.geometryDatabase.deselectAll(); var breps = moi.geometryDatabase.getLastCreated().getBReps();<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;for ( var i = 0; i < breps.length; ++i ) { var faces = breps.item(i).getFaces(); for ( var j = 0; j < faces.length; ++j )<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;{ var f = faces.item(j); if ( f.isNew ) f.selected = true; } }<br><br />
<br />
Update MoiList and ObjectList - Add list.clear() and objectlist.clear() methods which will empty out the list so it has length=0.<br />
<br />
Add curve.changeClosedCurveSeam( new_start_parameter, rebuild_circles /*optional, default = true */ );<br />
<br />
Update scripting - window moving and sizing methods.<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;Add window positioning methods:<br />
<br />
&nbsp;&nbsp;&nbsp;&nbsp;win.move( x, y ); - move the window to the given x,y screen coordinates. Can be given either one argument of an object with x,y properties, or 2 numeric arguments.<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;win.resize( width, height ) - resize the client area of a window to the given width and height. Can be given either one argument with x,y or width,height properties, or 2 numeric arguments.<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;win.getPosition() - returns an object with .x and .y properties for the window's screen coordinates.<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;win.getSize() - returns an object with .width and .height properties for the window's client area width and height.<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;win.getFrameSize() - returns an object with .width and .height properties for the window frame's width and height.<br />
<br />
&nbsp;&nbsp;&nbsp;&nbsp;Also added moi.ui.getScreenRect( element ) which will give the screen coordinates of the given element or UIPanel. Returns an object with .left, .top, .right, .bottom, .width, and .height properties.<br />
<br />
&nbsp;&nbsp;&nbsp;&nbsp;Example - increase the Options dialog width by 10 pixels:<br />
<br />
&nbsp;&nbsp;&nbsp;&nbsp;var uipanel = moi.ui.getUIPanel( 'moi://ui/options.htm' );<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;if ( uipanel )<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;{<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;var dlg = uipanel.moiWindow;<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;var pos = dlg.getSize(); pos.width += 10; dlg.resize( pos );<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;}<br />
<br />
&nbsp;&nbsp;&nbsp;&nbsp;Example - position the Options dialog to the right of the side pane:<br />
<br />
&nbsp;&nbsp;&nbsp;&nbsp;var options = moi.ui.getUIPanel( 'moi://ui/options.htm' );<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;if ( options )<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;{<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;var rc = moi.ui.getScreenRect(moi.ui.sidePane);<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;options.moiWindow.move(rc.right,rc.top);<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;}<br />
<br />
Update view tabs customization<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;Call a function UpdateViewTab( TabButton ) in the UI when a view tab has been reversed, so that it is possible to implement custom UI like having images there instead of text. Requested on the forum by Tim Whiteman here:<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=9821.1<br />
<br />
<br />
Update Esc script cancelling<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;Use different method to determine time since last wait for event. The previous method of watching calls to WaitableObject::waitForEvent() is not good because there are other kinds of event loops that do not go through WaitableObject, like modal dialogs or combo box dropdowns. The new method should handle all types of event loops.<br />
<br />
Update offset factory - Enable a new property factory.curveOffsetDistance to return the distance used by offset in through point mode.<br />
<br />
Update pointpicker, add .recalc() method Requested on the forum by Tudor here:<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=8665.221<br />
<br />
<br />
== Oct-27-2020 ==<br />
<br />
[http://moi3d.com/forum/index.php?webtag=MOI&msg=10011.1 Forum announcement]<br />
<br />
This should be the last v4 beta unless any new bugs pop up. The only remaining area for finishing v4 is to update the documentation.<br />
<br />
New stuff:<br />
<br />
Implemented dimension output to PDF/AI formats.<br />
<br />
Loosen cplane projection behavior for dimensions. Projection to the cplane is now a checkbox option inside the dim commands. When turned off you can now do things like pick the first point in the 3D view and then the next point in an ortho view instead of all points being projected to the cplane of the first pick (which can still be enabled by the Project to cplane checkbox option). You can also now create a linear dimension going in the z-axis direction in the 3D view.<br />
<br />
Lightweight conics for PDF/AI export - Use specialized fitter for circles, arcs, ellipses and elliptical arcs to make a lighter weight control point structure. Can be disabled by a setting in moi.ini, add in an entry under [AI/PDF Export] :<br><br />
[AI/PDF Export] UseLightweightConics=n<br />
<br />
Update dimension grid snap. Fix bug where grid snap was snapping to a displaced grid if the initial picked point was not on a grid point. Fixes bug reported in the forum by Larry here:<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=9942.117<br />
<br />
64-bit 3DM file output - switch to Rhino v5 3DM output by default and fixed a bug to allow 3DM files sizes greater than 2GB. Also added a moi.ini option to control the default 3DM version:<br><br />
[3DM] Version= Can be set to Version=4 to make Rhino v4 3DM output which was what MoI v3 used.<br />
<br />
Update FBX default version. Update default FBX file version to 2013/7.3/7300 since Blender does not support 2010/6.1/6100 .<br />
<br />
PDF/AI export - Fix bug with "Preserve units" + "Center on page" option. Fixes a bug reported on the forum by David here:<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=9942.46<br />
<br />
Update DXF spline import - handle DXF output from CorelDRAW with duplicated points. Fixes DXF import problems reported on the forum here:<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=9946.1<br />
<br />
Fixed an infinite loop bug in Qt when showing popup windows in a certain order.<br />
<br />
Update curve control point editing - maintain analytic curves. When doing control point editing on multi segment curves, maintain analytic curve types for segments that are not affected by the current control point selection.<br />
<br />
Updated Esc key handling. If there is a waitable object that has called allowNestedCancel(), don't make Esc cancel the entire command. This should give equivalent behavior for command flow whether clicking on tthe "Cancel" button or using Esc. Fixes a problem reported in the forum by Larry here:<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=9918.1<br />
<br />
Update color picker dialog - fix dialog size shifting when using "Pick Screen Color" button.<br><br />
Fixes a bug reported by Wayne on the forum here:<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=9942.102<br />
<br />
Updated SubD import library with fixes for a couple of remaining crash cases when processing malformed mesh topology.<br />
<br />
Update IGES/STEP output - option for not generating output as an assembly structure. Can be set in moi.ini for IGES or STEP output under:<br><br />
[IGES] ExportFlattenAssemblies=y<br><br />
[STEP] ExportFlattenAssemblies=y<br><br />
Set to =y to generate output without assembly structures same as V3. Should fix problem with exporting to Condacam reported by Joerg in the forum here:<br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=9942.105<br><br />
<br />
Scroll bar bug fix - Update Qt webkit to fix bug when dragging scroll bar and releasing mouse outside window resetting scroll position to top. Fixes a bug reported by Frederick on the forum here:<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=9995.1<br><br />
<br />
Fix edge selection bug after boolean union in areas where planes were merged together. Fixes a bug reported in e-mail by Pilou.<br />
<br />
Update IncrementalSave - Maintain leading 0 padding in current filename, so File_0020.3dm for example will make File_0021.3dm instead of just File_21.3dm as it previously did.<br />
<br />
Add Align option to Draw solid > Text command. Requested by Stefano in the forum here:<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=9942.99<br />
<br />
Add option for showing annotations in a specific color instead of by style color. In moi.ini under the [View] section:<br><br />
AnnotationColorMode=ByStyle<br><br />
AnnotationFixedColor=0,0,0<br><br />
The color mode can be either ByStyle or FixedColor. If set to AnnotationColorMode=FixedColor then they will show using the color from AnnotationFixedColor=R,G,B (each with a value from 0 to 255).<br><br />
Requested by Stefano in the forum here:<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=9950.1<br><br />
<br />
Add Value: property to Details... properties dialog for dimensions for copying value to the clipboard. Requested by Mindset in the forum here:<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=6925.570<br />
<br />
Add option in moi.ini for not limiting Options > View > Meshing parameters > "Mesh angle" value:<br><br />
[View]<br><br />
NoMeshAngleLimit=y<br><br />
<br />
<br />
Scripting:<br />
<br />
Add moi.ui.getLastOrientationPickerFrame() - returns the coordinate frame that was picked with the last OrientationPicker.<br />
<br />
Update startup scripts - call startup scripts after first UI panel layout has been completed so things like the side pane tabs can be manipulated by the script.<br />
<br />
<br />
== Dec-21-2020 ==<br />
<br />
[http://moi3d.com/forum/index.php?webtag=MOI&msg=10075.1 Forum announcement]<br />
<br />
I'm just about ready for the final v4 release. There were a few bugs fixed since the previous v4 beta and the v4 final release, and so I'm publishing this final v4 beta with those last fixes included.<br />
<br />
New stuff:<br />
<br />
Documentation has been updated for v4.<br />
<br />
Update angular dimension extension lines. Only draw extension lines for angular dimensions from the arc to the picked points, not from arc all the way to the center. Fixes angular dimension issues reported in the forum by Mik here:<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=10011.36<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=10011.50<br />
<br />
Update DimRadius command. Fix problem with placing first dimension point further away than the arc's center point. Fixes bug reported by WN on the forum here:<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=10011.47<br />
<br />
Update Inset command - Allow thickness of 0 in Inset command for some additional effects. Discussed in the forum here:<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=10029.2<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=10029.20<br />
<br />
<br />
Bug fixes:<br />
<br />
Fixed regression with named object selection by typing in object names in the XYZ input control. This was broken a couple builds back with a new "Command not found" error message showing if the input did not match any command names.<br />
<br />
Fixed regression in numeric input field handling. Match behavior of v3 when erasing all text in an input field, set a value of 0 in this case. Fixes regression reported by PaQ in the forum here:<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=10011.150<br />
<br />
Update static objects rendering - check for 32-bit index buffer support before trying to use it.<br />
<br />
Update Chamfer - make analytic plane for chamfer surface when possible, fixes Inset failing on a newly generated chamfer which would succeed when saved to 3dm and reloaded. Reported on the forum here:<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=10051.1<br />
<br />
Update Mac font fallbacks. Fix Qt problem where DefaultFontFallbacks.plist file is not present on Catalina OS anymore.<br />
<br />
Update BGFX error handling - Put up a message box if BGFX returns a fatal error and guard against using it if it was not initialized, rather than crashing.<br />
<br />
Update Undo settings - fix shutdown bug where undo settings were not being written to moi.ini on app shutdown.<br />
<br />
Update SKP and FBX export - fix bug where SKP/FBX export didn't work right with some filenames with extended characters.<br />
<br />
<br />
Scripting:<br />
<br />
Update PointPicker script properties so a script can tell if there is a straight snap currently active.<br><br />
Added pointpicker.hasBasePt , pointpicker.hasStraightSnap , pointpicker.straightSnapDir read only properties.<br><br />
This makes it possible to do a "direction lock" shortcut key:<br><br />
var pp = moi.ui.getActivePointPicker(); if ( pp && pp.hasStraightSnap ) { pp.restrictToLinePtDir( pp.basePt, pp.straightSnapDir, true ); }</div>Michael Gibsonhttp://moi3d.com/wiki/index.php?title=V4Beta&diff=911V4Beta2020-12-23T12:04:45Z<p>Michael Gibson: </p>
<hr />
<div><big>Release notes for each V4 beta release are gathered here.</big><br />
<br />
== Nov-12-2017 ==<br />
<br />
[http://moi3d.com/forum/index.php?webtag=MOI&msg=8675.1 Forum announcement]<br />
<br />
V4 is a major rewrite with changes on many levels so please be on the lookout for any bugs.<br />
<br />
The main new functionality is that MoI is now a 64-bit program for both Windows and Mac and the Mac version is a native build and doesn't use Wineskin anymore.<br />
<br />
New system requirements are Windows 7/8/10 64-bit or macOS 10.8 - 10.13 .<br />
<br />
Polygon conversion can now use all your system memory instead of running into 32-bit memory limits.<br />
<br />
A lot of various little quirky things should be tuned up for the Mac version.<br />
<br />
The only known areas still not quite working yet are snap text labels and dotted/dashed line styles in viewports and Mac trackpad gestures aren't fully functional yet.<br />
<br />
<br />
== Nov-18-2017 ==<br />
<br />
[http://moi3d.com/forum/index.php?webtag=MOI&msg=8682.1 Forum announcement]<br />
<br />
Bug fixes:<br />
<br />
Fix for the frozen UI bug when restoring a maximized main window from a minimized or hidden state. Please let me know if you see it again.<br />
<br />
Fix Mac deployment issue that was preventing things from working on OS X 10.8 and 10.9, MoI should run ok there now.<br />
<br />
Fix font name bug where MoI V4 would overwrite the UI font name property that V3 uses in moi.ini and so the V3 UI font changed after you ran V4. They should now stay separate.<br />
<br />
Fix bug where dropdown controls in commands wouldn't reinitialize to their last used value. Reported by bemfarmer in the forum here:<br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=8675.204<br />
<br />
Fix construction line snapping bug reported in the forum by Moujiik here:<br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=8675.119<br />
<br />
Not a whole lot of changes, normally I would have waited until a bit more were batched up but the frozen UI bug was pretty significant so I wanted to try and nail that one down soon.<br />
<br />
<br />
== Nov-27-2017 ==<br />
<br />
[http://moi3d.com/forum/index.php?webtag=MOI&msg=8704.1 Forum announcement]<br />
<br />
Bug fixes:<br />
<br />
Saving to IGES and STEP files - fixed a bug where using .stp or .igs file extensions wasn't working on Mac.<br />
<br />
Mac full screen mode - fix for the problem where the view controls window would show on the desktop space, sending you back to the desktop the first time you moved the mouse over a viewport after going to full screen. Please let me know if you see it again.<br />
<br />
Updated shortcut key editor - Make the "Key" column expand to whatever width is necessary to show the longest key combo. Fixes problem reported in the forum by Metin here:<br />
http://moi3d.com/forum/messages.php?webtag=MOI&msg=8682.42<br />
<br />
Viewport toolbar - fixed a bug where doing view manipulation using the bottom viewport toolbar could miss the mouse up event and get stuck.<br />
<br />
Orientation picker - fixed a sporadic drawing bug with the orientation picker reported on the forum by Max here:<br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=8682.16<br />
<br />
Shortcut keys with Shift - Fixed a bug in shortcut keys using shift + number keys. V4 was generating Shift+1 as Shift+! which was incompatible with V3, V3 would convert it back to Shift+1 which was then not recognized by V4. V4 should now generate Shift+1 for that key combination and not Shift+! anymore. Fixes a bug reported on the forum by Marco here:<br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=8682.50<br />
<br />
Background images - Fixed a crash when making a background image from a bitmap file with lower than 32-bit color depth. Reported on the forum by Vladimir here:<br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=8682.100<br />
<br />
Undo - Fixed a bug where undo wouldn't find the proper object to restore in some cases. Reported on the forum by Val here:<br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=8682.83<br />
<br />
<br />
Scripting:<br />
<br />
moi.geometryDatabase.findStyle() - fixed a bug in the findStyle() function for the "create if not found" case, reported on the forum by Max here:<br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=8682.16<br />
<br />
obj.getBoundingBox() - The boolean parameter for getting high accuracy bounds was marked as required in v4, while in v3 it was optional with a default of false. Updated v4 to match v3.<br />
<br />
moi.filesystem.openFileStream - switch to use QTextStream for reading to get better unicode support. Unicode files with byte order marks should be supported now, the default will be UTF-8 if no byte order mark is found. Also added new methods .setWriteBOM( boolean ) which you can call to make writing a text file write the byte order mark at the front (default is no BOM), and .setCodec( name ) to have specific control over what encoding to use for reading or writing. Supported codecs are listed here: http://doc.qt.io/qt-5/qtextcodec.html#details .<br />
<br />
moi://appdata/ - add support for moi://appdata/ URLs so you can load HTML resources like images from the MoI app data directory. moi://appdata/ will resolve to %AppData%\Moi on Windows and to ~/Library/Application Support/Moi on Mac.<br />
<br />
String to integer conversion - Updated so a string value of "1.0" will be successfully converted to an integer value of 1 rather than rejecting it. Fixes a change in behavior from v3 to v4 that broke some of Brian's scripts.<br />
<br />
factory.setValue() - switched to v3 behavior so sending the wrong object type doesn't trigger an exception. Fixes the SpurGearProfile script.<br />
<br />
<br />
== Dec-11-2017 ==<br />
<br />
[http://moi3d.com/forum/index.php?webtag=MOI&msg=8731.1 Forum announcement]<br />
<br />
Bug fixes and changes:<br />
<br />
Mac full screen mode - getting sent back to the desktop the first time you moved the mouse over each viewport after going to full screen mode should be finally fixed! Also Ctrl+Cmd+F shortcut key for full screen toggle should now work.<br />
<br />
Mac trackpad and Magic Mouse - Finished implementing multitouch view navigation for the trackpad and Magic Mouse on Mac. Magic Mouse should be back to zooming instead of panning. The Zoom speed can be adjusted in moi.ini [MultiTouch] MagicMouseZoomSpeed=1.0 . Change this to something like 2.0 to make the default behavior faster or 0.5 to go slower. You can also hold down the Ctrl key to go slower as well.<br />
<br />
Mac ignored mouse bug - Fix for bug where mousemove events would stop working in certain conditions when restoring the main window from hidden or showing a modal dialog. Fixes bug reported by Finema here: http://moi3d.com/forum/index.php?webtag=MOI&msg=8675.189<br />
<br />
Updated "On" object snap mechanics - Changed the way On object snap for curves works to get better accuracy with curves far from the origin.<br />
<br />
Incorrect default values for some commands - Fixed a bug where the default values for the Text and Rebuild commands were incorrect on locales that use commas for the decimal separator. Reported by Vladimir on the forum here: http://moi3d.com/forum/index.php?webtag=MOI&msg=8704.32<br />
<br />
Trim - fixed a bug in the Edit &gt; Trim command where if an object was set to be both an object to be trimmed as well as a cutting object it could get hidden unexpectedly.<br />
<br />
Command button highlighting - Fix for command buttons remaining highlighted after command ends. Reported by Vladimir on the forum here: http://moi3d.com/forum/index.php?webtag=MOI&msg=8704.32<br />
<br />
Read-only file handling - Fix bug where using File &gt; Save wasn't prompting for a new file name when the current opened file was set to read-only. Reported in the forum by mhasse here: http://moi3d.com/forum/index.php?webtag=MOI&msg=8714.1<br />
<br />
Crash fix for newer CPU/Older OS combination - Fix for 0xc000001d illegal instruction exception when running on Win7 SP0 with a newer AVX-capable CPU.<br />
<br />
Hidden-line generation - Increase Canvas megapixel size limit from 175 to 1000.<br />
<br />
Degenerate box error - fixed bug where a script error would be displayed if you made a degenerate rectangle in any of the Draw solid &gt; Box commands.<br />
<br />
Update text input fields - Text input fields were only applying typed in values when the input panel was open, or when the Enter or Tab keys were pressed, not if just clicking outside the field as they now will. Should fix a PDF export dialog bug reported by reported by Moujiik here: http://moi3d.com/forum/index.php?webtag=MOI&msg=8704.15<br />
<br />
<br />
Scripting:<br />
<br />
viewport.setCameraAndTarget() - Fixed bug in viewport.setCameraAndTarget() function, reported in the forum by Ralf here: http://moi3d.com/forum/index.php?webtag=MOI&msg=8704.25<br />
<br />
Process memory use limit - Added option in moi.ini for limiting maximum memory use - Windows only. Can be set in moi.ini under [Settings] MaxProcessMemoryUse=x . Requested by Burr on the forum here: http://moi3d.com/forum/index.php?webtag=MOI&msg=8704.26<br />
<br />
moi.view.screenshot - Fix bug where the moi.view.screenshot() method was capturing the wrong area of the screen on Mac.<br />
<br />
<br />
Enable setting default values for controls from shortcut keys. UI controls can now be triggered or initialized with custom values if the control's id is supplied in the command-line parameters for the command. For buttons, the presence of the button's id value in command line parameters will trigger a UI event for the button the first time that it is shown, this will have the same effect as clicking the button.<br />
For dropdowns and checkboxes, the presence of the control's id in an id=value pair will use that value to initialize the control rather than taking the last used or default value as normal.<br />
<br />
This makes it possible to set up shortcut keys that package up different options within commands, for example:<br />
<br />
Trim addtrimpoints removekeepmode=keep<br />
<br />
Trim addtrimpoints removekeepmode=remove<br />
<br />
Trim isocurve isodir=u<br />
<br />
Trim isocurve isodir=v<br />
<br />
Line bothsides=true<br />
<br />
Extrude tapered<br />
<br />
<br />
<br />
== Feb-9-2018 ==<br />
<br />
[http://moi3d.com/forum/index.php?webtag=MOI&msg=8814.1 Forum announcement]<br />
<br />
Text labels inside viewports still not implemented yet, that's the last remaining thing still left to get v4 fully caught up.<br />
<br />
<br />
Bug fixes and changes:<br />
<br />
<br />
Dashed/Dotted line styles implemented so things like the grid, construction lines, and hidden line display should be looking proper now.<br />
<br />
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.<br />
<br />
DXF import layers - Support reading layers in the DXF file as Styles in MoI.<br />
<br />
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<br />
<br />
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.<br />
<br />
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.<br />
<br />
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.<br />
<br />
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<br />
<br />
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.<br />
<br />
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.<br />
<br />
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.<br />
<br />
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<br />
<br />
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<br />
<br />
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.<br />
<br />
Windows shutdown bug - Fix bug when shutting down Windows while MoI is still open reported by Vladimir in the forum here:<br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=8731.81<br />
<br />
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<br />
<br />
Fix crash on program shutdown if license key dialog was canceled.<br />
<br />
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<br />
<br />
<br />
<br />
Scripting:<br />
<br />
Added additional script interface for Curve and CurveSegment objects.<br />
<br />
For both Curves and CurveSegments:<br />
<br />
crv.domainMin - Property that returns lower bound of the curve's parametric domain.<br />
<br />
crv.domainMax - Property that returns upper bound of the curve's parametric domain.<br />
<br />
crv.evaluatePoint( t ) - Function returning a point for the given parameter value.<br />
<br />
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.<br />
<br />
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.<br />
<br />
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...<br />
<br />
crv.isPlanar - Property that returns true if the curve's control polygon is planar.<br />
<br />
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.<br />
<br />
crv.isOnPlane( frame ) - Function that returns true if the curve is on the given frame's x/y plane.<br />
<br />
crv.isOnParallelPlane( frame ) - Function that returns true if the curve is on a plane parallel to the given frame's x/y plane.<br />
<br />
crv.isClosed - Property that returns true if the curve is closed.<br />
<br />
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).<br />
<br />
crv.isDegenerate - Property that returns true if the curve has a degenerate control polygon with all the points stacked in the same spot.<br />
<br />
crv.isLine - Property that returns true if the curve has the shape of a line.<br />
<br />
crv.isSimpleLine - Property that returns true if the curve is a simple line segment made up of only 2 control points.<br />
<br />
crv.isCircle - Property that returns true if the curve is a circle.<br />
<br />
crv.isArc - Property that returns true if the curve is a circular arc.<br />
<br />
crv.isEllipse - Property that returns true if the curve is an ellipse (either a full ellipse or an elliptical arc).<br />
<br />
crv.conicFrame - Property that returns the coordinate frame of a circle, arc, or ellipse. Only valid if isCircle, isArc, or isEllipse returns true.<br />
<br />
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.<br />
<br />
crv.conicRadiusY - Property that returns the y-axis radius of an ellipse. Only valid if isEllipse returns true.<br />
<br />
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.<br />
<br />
<br />
The following only apply to Curves, not CurveSegments:<br />
<br />
crv.isClickSelected - Property that returns true if the curve was selected by a mouse click action.<br />
<br />
crv.clickSelectionPoint - Property that returns the point on the curve where it was click selected. Only valid if isClickSelected returns true.<br />
<br />
crv.clickSelectionParam - Property that returns the parameter value of the curve where it was click selected. Only valid if isClickSelected returns true.<br />
<br />
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.<br />
<br />
<br />
Added moi.ui.systemDPI property.<br />
<br />
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.<br />
<br />
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.<br />
<br />
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.<br />
<br />
Add a container with id="CommandBarCustomUI" in CommandBar.htm to make it easier to populate the UI from a startup script.<br />
Example:<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;var container = moi.ui.commandBar.CommandBarCustomUI;<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;container.insertAdjacentHTML( 'beforeEnd', '<moi:CommandButton>Test1</moi:CommandButton>' );<br />
<br />
Appdata/scripts directory - you can add a scripts folder inside appdata and MoI will also check there for running an "instant script".<br />
<br />
<br />
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.<br><br />
The trackpadgesture event object has these properties:<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;event.gestureType : string value of 'Scroll', 'SmartZoom', 'Zoom', or 'Rotate'.<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;event.deltaX, event.deltaY : movement for Scroll , 2 fingers swiping.<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;event.numTouches : number of touch points being used for Scroll.<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;event.scaleFactor : scale factor for pinch/zoom<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;event.angle : angle change for Rotate.<br><br />
<br />
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();<br />
<br />
<br />
== May-12-2018 ==<br />
<br />
[http://moi3d.com/forum/index.php?webtag=MOI&msg=8936.1 Forum announcement]<br />
<br />
I think this version is all caught up now, the last remaining things that were missing from v3 such as text labels inside viewports are now implemented and all regression bugs that have been reported should now be fixed. So if that holds up this should be a major milestone for v4 where I'll now be switching to working on new features rather than rewriting stuff from v3.<br />
<br />
Bug fixes and changes:<br />
<br />
<br />
Implemented text rendering inside viewports for things like snapping tag labels ("End", "Mid", etc...)<br />
<br />
OBJ export - Fixed bug where invalid OBJ file would be generated if object names had extended characters in them. Reported through e-mail by Lewis.<br />
<br />
STEP import - Fixed crash bug in STEP import reported through e-mail by John Lewis.<br />
<br />
iMac Pro draw speed - Fixed bug where too frequent UI updates caused a noticeable draw speed slowdown compared to V3 on some high dpi Mac machines. Fixes bug reported by Metin.<br />
<br />
Mouse cursors - Fixed various bugs where the mouse cursor wasn't updating properly, reported by Vladimir in the forum here:<br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=8814.128<br />
<br />
Text field right click context menu - Fixed a bug with right click on text input fields in menus being offset.<br />
<br />
Menu hover state - Fixed a bug where when launching a menu, the button hover state on the launching UI would get stuck until another click.<br />
<br />
Color picker custom colors - Custom colors set in the color picker dialog are now saved to and restored from moi.ini so they will persist between program sessions.<br />
Fixes bug reported by Moujiik on the forum here: http://moi3d.com/forum/index.php?webtag=MOI&msg=8855.5<br />
<br />
Object properties - Fixed bug where cached objects in the async worker process wouldn't get updated if style, name, or selection changed.<br />
Fixes bug reported on the newsgroup by Brian here: http://moi3d.com/forum/index.php?webtag=MOI&msg=8814.81<br />
<br />
Selection filter crash - Fix for crash when setting a style selection filter, reported by Shane on the forum here: http://moi3d.com/forum/index.php?webtag=MOI&msg=8872.1<br />
<br />
Busy script interruption - Scripts that do a lot of calculation in loops can now be interrupted by pushing the Escape key.<br />
Requested on the forum by Marco here: http://moi3d.com/forum/index.php?webtag=MOI&msg=8814.63<br />
<br />
Trackpad scroll gesture - Fix bug where Mac trackpad scroll gesture could be treated as a mouse wheel event,<br />
if the first touch happened on a different window.<br />
Fixes bug reported by Max in the forum here: http://moi3d.com/forum/index.php?webtag=MOI&msg=8814.21<br />
<br />
DXF export arcs and circles - Previously arcs and circles that had a normal vector pointing straight down in the negative z axis direction would get flipped in the export, because there are a couple of programs that do not read those correctly. But this direction flip is bad for CNC usage, so the default now is to not flip them. It is possible to return to the previous flipping behavior by a setting in moi.ini: [DXF Export] FlipNegativeZAxisCirclesAndArcs=y<br />
Fixes a bug reported in the forum by Vladimir here: http://moi3d.com/forum/index.php?webtag=MOI&msg=6925.419<br />
<br />
VSync - Added option in moi.ini to limit screen redraw with vsync, might help if you are experiencing a tearing type effect in the display.<br />
Can be set under [View] VSync=y . Requested by torsten in the forum here: http://moi3d.com/forum/index.php?webtag=MOI&msg=8814.140<br />
<br />
Additional command dirs - Add moi.ini setting under [Commands] AdditionalCommandsDirs= which can be set to a semi-colon delimited list of additional directories to look for commands, in addition to the built in commands and appdata commands.<br><br />
[Commands]<br><br />
AdditionalCommandsDirs=c:\path1;c:\path2<br><br />
Requested on the forum by Hamish here: http://moi3d.com/forum/messages.php?webtag=MOI&msg=8814.97<br />
<br />
FBX export vertex colors - Add option in moi.ini for writing vertex colors to FBX exports. Can be enabled by setting:<br><br />
[FBX Export]<br><br />
WriteVertexColors=y<br><br />
Requested by Stefan in the forum here: http://moi3d.com/forum/index.php?webtag=MOI&msg=8853.5<br />
<br />
Graphics API override - Add moi.ini option for which graphics API to use. <br />
On Windows or Linux/Wine a specific render engine can be controlled by a setting in moi.ini, under the [View] section, GraphicsAPI key:<br><br />
[View]<br><br />
GraphicsAPI=Direct3D11<br><br />
or<br><br />
GraphicsAPI=OpenGL<br />
<br />
Startup working directory - Add moi.ini options for setting the initial working directory on startup.<br><br />
[Settings]<br><br />
StartupWorkingDirectory=<br><br />
SaveWorkingDirectoryAtExit=n<br><br />
Requested by Marc in the forum here: http://moi3d.com/forum/index.php?webtag=MOI&msg=8814.88<br />
<br />
Trackpad as mouse wheel - Add setting in moi.ini for making Mac trackpad scroll used as a mouse wheel zoom as older MoI versions did.<br><br />
[MultiTouch]<br><br />
UseTrackpadScrollAsMouseWheel=y<br><br />
Requested by Marc in the forum here: http://moi3d.com/forum/index.php?webtag=MOI&msg=8814.88<br />
<br />
<br />
<br />
== Jun-6-2018 ==<br />
<br />
[http://moi3d.com/forum/index.php?webtag=MOI&msg=8966.1 Forum announcement]<br />
<br />
New stuff:<br />
<br />
Major overhaul of STEP/IGES/SAT importing.<br />
<br />
These imports will now no longer block the main thread so it won't look like MoI is frozen while it is loading a big file.<br />
<br />
The loading happens in 2 phases, first an initial scan of the file that doesn't do too much work except logging the structure of where objects are located. Then the next heavier phase of processing the objects will make use of multiple CPU cores for a major speed increase. So there should be a very substantial performance increase in loading large STEP, IGES, or SAT files in this version.<br />
<br />
Also the HarmonyWare libraries used for working with these formats have now been updated from version 1.7.11 to the latest 2.0.8 release and there are a lot of bug fixes from that. A notable one is that some incorrect positioning of instances should be good now. Also some other fixes on MoI's side should make for colors coming through from STEP files that were previously missed.<br />
<br />
It would be cool to hear how the new multi-core enabled importer performs on some big files compared to MoI v3!<br />
<br />
Also please let me know if you see any new problems with any particular imports. If you do please try to send the file to me at moi@moi3d.com so I can test with it over here, I will keep any files confidential.<br />
<br />
<br />
Other things:<br />
<br />
Window selection Mac - Fix for sluggish selection window dragging reported by James through e-mail.<br />
<br />
Properties panel size display - Adjusted the quick size calculation for the properties panel to hopefully increase accuracy a little.<br />
<br />
Properties panel - Report closed edges as a distinct object type. Fixes an issue of inconsistent behavior between curves and edges reported through e-mail by Scott.<br />
<br />
Edit frame grip size - Added option in moi.ini for setting edit frame grip handle pixel size, so it can be adjusted for higher res displays,<br />
Requested by Barry in the forum here: http://moi3d.com/forum/index.php?webtag=MOI&msg=8960.1<br><br />
[View]<br><br />
EditFrameGripPixelSize=24<br />
<br />
DisableOnSrfInOrtho setting - Added scripting access to DisableOnSrfInOrtho setting so it can be toggled at runtime under moi.drawingAids.disableOnSrfInOrtho . Requested on the forum by immortalx here: http://moi3d.com/forum/index.php?webtag=MOI&msg=8947.1<br />
<br />
NURBS Export RotateZUpToYUp option - Added option in moi.ini for option for exporting STEP/IGES/SAT formats to rotate the export to a Y up coordinate system.<br><br />
[NURBS Export]<br><br />
RotateZUpToYUp=y<br />
<br />
Update viewport right click - Don't push Cancel buttons with a viewport right click, it's too easy to accidentally cancel a long file import or things like that.<br />
<br />
<br />
<br />
== Aug-28-2018 ==<br />
<br />
[http://moi3d.com/forum/index.php?webtag=MOI&msg=9044.1 Forum announcement]<br />
<br />
The main focus for this beta is performance enhancements.<br />
<br />
3DM files will now use multiple CPU cores for loading so large files should load significantly faster and show a progress bar.<br />
<br />
Also the display engine has been enhanced to take advantage of modern GPUs - display data is now cached in the GPU's VRAM which should result in faster redraw speed for large files.<br />
<br />
<br />
Other bug fixes and changes:<br />
<br />
Mac version multiple windows - Add "Window" menu to Mac version top menu. Shows all open files and allows switching between them easier. Also support Cmd+Tilde (Cmd+~) and Cmd+Shift+Tilde for switching to next/prev window.<br />
<br />
Construction line bug fix - Fix construction line creation bug reported by jopo in the forum here:<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=8966.53<br />
<br />
Object drag bug fix - fix bug for moving the mouse over another viewport when dragging objects. Reported by Burr on the forum here:<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=9016.1<br />
<br />
Mac AMD performance - fix problem with default buffer location with OpenGL on some AMD cards that was causing slow redraws on some machines like iMac pro.<br />
<br />
Updated Mac file open behavior. To match the Mac document based application framework behavior, if a file is opened by drag/drop or by double-clicking on the desktop icon do not open a new window for it if there is an existing window with it already open.<br />
<br />
3DS Max zoom compatibility - Added moi.ini option for Alt+Ctrl+MMB zoom for 3DS Max compatibility. Can be set under:<br><br />
[View]<br><br />
AltCtrlMMBZoom=y<br><br />
<br />
Object snap labels on left side - Add moi.ini option to make object snap labels shown to the left of the target point, can be useful if you're drawing directly on a screen such as with a Cintiq screen. Can be set in moi.ini under:<br><br />
[Drawing Aids]<br><br />
ShowObjectSnapLabelToLeft=n<br><br />
<br />
Shortcut keys update - On Windows if there is a [Shortcut Keys Mac] section of the moi.ini file, read and write shortcuts from there so you can copy the moi.ini file over from Mac to Windows. Fixes issue reported on the forum by Matt here:<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=8970.1<br />
<br />
STEP import bug fix - Fixed import bug for file MF2018.STEP getting stuck at 36%, reported on the forum by Marco here:<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=8966.9<br><br />
Also fixed a different STEP import bug reported by Eric Bucy through e-mail.<br />
<br />
Fixed file loader UI bug - Fix bug where main window would not maximize properly when trying to show progress bar UI before main window was initially displayed, such as when MoI launched by double clicking a STP file. Fixes bug reported in the forum by OSTexo here:<br><br />
OSTexo http://moi3d.com/forum/index.php?webtag=MOI&msg=8966.40<br />
<br />
File notes - Add notes property that is saved to and loaded from .3dm files. Can be accessed by setting up a shortcut key with:<br><br />
script: moi.ui.createDialog( 'moi://ui/NotesDialog.htm', 'resizeable' );<br />
<br />
Viewport right click option - Add option for v3 behavior of right clicking in a viewport working as a shortcut for pushing the Cancel button when a command only has Cancel and not Done. Can be set in moi.ini under:<br><br />
[View]<br />
DoRightClickCancel=y<br />
<br />
Add new appdata directory option - MoI will now look for an appdata directory that has been created alongside "commands", "ui", etc... and if found will use that location as the appdata folder, to make it possible to store everything within a single directory.<br />
<br />
Add moi.ini setting for selection hit test radius<br><br />
[View]<br><br />
SelectionHitTestRadius=12<br><br />
<br />
Scene browser scripting - Added script access to scene browser items so it is possible to make a startup script that expands sections on program startup. To do that put the following in a .js file in your Moi appdata startup folder:<br><br />
var items = moi.ui.sceneBrowser.rootItems;<br><br />
for ( var i = 0; i &lt; items.length; ++i )<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;items[i].expanded = true;<br />
<br />
<br />
== Oct-17-2018 ==<br />
<br />
[http://moi3d.com/forum/index.php?webtag=MOI&msg=9100.1 Forum announcement]<br />
<br />
The main focus for this beta is a polygon sub-d surface to NURBS conversion method, available on the side pane under SubD > Create > From file. This allows you to open an .obj file that contains a sub-d polygon cage and have it converted to a high quality NURBS object in MoI.<br />
<br />
Some other stuff:<br />
<br />
Settings for page size are now available in PDF/AI exports.<br />
<br />
Fixed crash bug when modifying display mesh angle.<br />
<br />
Updated STEP export to fix problem with object names not coming through to SolidWorks, Fusion360 and KeyShot.<br />
<br />
Added moi.ini option to set current file name with foreign file types. In moi.ini under [Settings] SetNameWhenOpeningAllFileTypes=y When set, the current file name is set for all file opens not just .3dm files. Requested by Alex on the forum here: http://moi3d.com/forum/index.php?webtag=MOI&msg=9044.41<br />
<br />
Updated DXF export to allow the dialog to be suppressed and options set by script. Parameters that can be set are:<br><br />
// DXF export function parameter options:<br><br />
//<br><br />
// NoUI=true<br><br />
// ExportType=2d | 3d<br><br />
// ProjectionView=top | 3d | front | right<br><br />
// WriteCurvesAs=splines | cubicsplines | polylines<br><br />
// PolylineAngleDegrees=10.0<br><br />
// UseSimpleEntities=true<br><br />
// NumDecimalPlaces=12<br><br />
//<br><br />
// GenerateHiddenLines=false<br><br />
// HiddenLineLayerMode=fromstyle | custom<br><br />
// HiddenLineLayerName=Hidden lines (layer name to use when layer mode = custom)<br><br />
// IgnoreTangentEdges=false<br><br />
// Resolution=25.0<br><br />
<br />
<br />
== Feb-27-2019 ==<br />
<br />
[http://moi3d.com/forum/messages.php?webtag=MOI&msg=9266.1 Forum announcement]<br />
<br />
New stuff:<br />
<br />
Numerous fixes for SubD import crashes and translation issues.<br />
<br />
Fix for SubD imports on objects of small scale.<br />
<br />
Fix for SubD imports with meshes that have multiple volumes that partially overlap each other. Previously these could sometimes not get separated into different solids properly.<br />
<br />
Update SubD import to read materials from the .obj file and make Styles from them in MoI. Also patch combining will pay attention to material assignments<br />
so patches will not get combined across different materials. Can be disabled under Options > Import/Export > SubD import options > "Use materials" checkbox.<br />
<br />
Add SubD import option for either fewer patches but with denser surface control points, or more patches around extraordinary vertices but with fewer surface<br />
control points in regular areas of the mesh. Set under Options > Import/Export > SubD import options > "Patch type".<br />
<br />
Update multiple selection - Add option for doing multiple selection only when shift key is down. Options > General > Multiple selection: "Always" or "Only when Shift is down".<br />
<br />
Fix cylinder boolean union bug. There was a bug with combining cylinders in boolean union when the cylinders had opposite axis directions. This was the cause of some occasional mysterious missing fillets where the fillet surface was ending up displaced some distance away from the trim boundaries.<br />
<br />
Fix a sporadic crash in Chamfer reported through e-mail by Sebastian Bielecki.<br />
<br />
Fix crash in center object snap after copy/pasting an arc edge curve.<br />
<br />
Update tesselator - fix degenerate span display bug. Fixes bug in mesher for making display meshes on surfaces with nearly degenerate spans. Fixes a bug reported through PM by BarryH.<br />
<br />
Add option for scaling STL export to target unit system. Under Options > Import/Export > STL Options > "Export units conversion".<br />
<br />
Update curve filleting - Enable "Constant distance" fillet mode for curves, currently only works for line segments.<br />
<br />
Fix 3DConnexion buttons bug where undo/redo on space mouse button presses was not working, reported by Ivan in the forum here: http://moi3d.com/forum/index.php?webtag=MOI&msg=9130.1<br />
<br />
Update command parameter parsing. Allow quotes to control parameter parsing so values with spaces can be used, for example: ArrayDir mode="Extent, Count" . Fixes a problem reported on the forum by Bravlin here: http://moi3d.com/forum/index.php?webtag=MOI&msg=6087.75<br />
<br />
Update shortcut keys parameters - start and end scripts. Make it possible for shortcut keys to define parameters for oncommandstart="" and oncommandend="" for script to run at the start or end of the command. For example this shortcut will run a script when the line command ends to select it: line oncommandend="moi.geometryDatabase.selectLastCreated();"<br />
<br />
Update shortcut keys for file commands. Enable controlling the file dialog file type with keyboard shortcuts by adding a filetype= option in the shortcut key. For example a shortcut key with: Open filetype=igs will make the file dialog have the .igs file type active. Can be used with Open, SaveAs, Import, and Export commands. Requested in the forum by Peticel here: http://moi3d.com/forum/index.php?webtag=MOI&msg=9118.1<br />
<br />
Update command UI automation - ordering. Some UI events cause the command to finish, so to be able to control a command the ordering of the events needs to be controllable.<br />
Rework the UI event triggering so they are triggered in the order given in the command line parameters. This makes the following possible:<br><br />
extrude tapered draftangle=20 distanceinput=10<br><br />
Previously that didn't work because the distanceinput is earlier in the UI and so got triggered earlier and ended the command before tapered or draftangle could be processed.<br />
<br />
Fix properties panel line length editing bug reported through e-mail by Tim Hickox.<br />
<br />
Fix tolerance bug that could cause small sized objects to get mangled boundaries when joined, regression from v3.<br />
<br />
Fix IGES import joining regression - Make iges entity 128 surfaces join together if joining is enabled, regression from v3.<br />
<br />
Updated IGES import joining - allow T junctures to join instead of only simple matching endpoints only.<br />
<br />
Fix IGES import bug for some cases with edges on seams of closed surfaces. Fixes an IGES file sent through e-mail by Charles Ludeke.<br />
<br />
Fix excessive load time with STEP file that had a degenerate surface in it.<br />
<br />
Update license key file paths - Allow a path to moi_v3_license.key to be passed as a command line parameter or set as an environment variable<br />
like moi_v3_license.key=path . Requested by Mariusz in the forum here: http://moi3d.com/forum/index.php?webtag=MOI&msg=9106.1<br />
<br />
If straight snap snap angle is set to 0, disable x/y plane straight snap line snapping.<br />
<br />
Add warning if running on Mac case sensitive file system.<br />
<br />
Update file dialogs - Save and restore last used file dialog location on all platforms.<br />
<br />
Update file loader progress bar - Add full path as tooltip to file name label.<br />
<br />
Add option for limiting the number of CPU cores used by file loading. Can be set under: [Settings] FileLoaderThreadLimit=x<br />
<br />
Update scripting - exe command line args<br><br />
moi.getExecutableCommandLineArgs() - returns list of command line parameters for launching the executable.<br><br />
moi.geometryDatabase.initialFileToLoad - filename for initial file to load by executable command line parameter.<br />
<br />
Scripting - Add moi.command.currentCommandName property for getting the current running command name by script, or empty string if no command currently running. Requested by Bravlin on the forum here: http://moi3d.com/forum/index.php?webtag=MOI&msg=7238.61<br />
<br />
Update Scene Browser, Types > Edges and Types > Faces behavior. Don't show edges or faces of hidden breps unless shift is down. Makes it easier to turn edges on/off without hidden breps being shown. Requested through e-mail by Tim Hickox<br />
<br />
Update scene browser - Make sure scene browser is initialized before any startup script that wants to access it is run.<br />
<br />
Scene browser script access - Add more script access to SceneBrowser: sceneBrowser.objects, sceneBrowser.types, and sceneBrowser.styles to get the root item for those sections.<br><br />
Added methods to a scene browser item:<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;item.find('name') - will search all children and return an item with that name or null if none present.<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;item.alterStatus(mode,rightclick) - alter the status area of an item, that's the one with the eye icon. Mode can be one of 'show','hide','lock','unlock'. Optional boolean parameter for rightclick will make it behave like a right mouse button click.<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;item.select(mode,rightclick) - alter the selection dot of an item. Mode can be one of 'toggle','select','deselect','filteron','filteroff'. Optional boolean parameter for rightclick will make it behave like a right mouse button click.<br><br />
Here's an example that toggles the selection dot for the Blue item under styles: moi.ui.scenebrowser.styles.find('Blue').select('toggle');<br />
<br />
Fix selection redraw bug on static objects where objects could get stuck looking like they were selected in the Intersect, Project, Silhouette, Join, and Separate commands. Reported through e-mail by James Elliott.<br />
<br />
Fix bug in Add pt with rational curves, reported in the forum by Bravlin here: http://moi3d.com/forum/index.php?webtag=MOI&msg=9216.34<br />
<br />
Fix for wrong selection display on iMac with NVIDIA GeForce GT 750M 1024 MB - work around driver bug.<br />
<br />
Fix for mouse move events getting stacked up on some Mac machines.<br />
<br />
Fix .skp and .fbx format export with unicode file names on Mac. Exporting to .skp or .fbx formats with certain kinds certain kinds of extended characters in the filename would fail.<br />
<br />
Update filename display Mac - Fix bug where filenames with <> characters were being treated as html tags.<br />
<br />
Fix MRU file list Mac - Fixed bug where on Mac if a file had a \ in it, it would not persist to the MRU list properly.<br />
<br />
Fix Mac crash when exporting to .3ds format.<br />
<br />
Fix QtWebKit Ctrl/Meta flippage on Mac. Make the HTML event object use Ctrl for Ctrl and Cmd for Cmd instead of flipped on Mac.<br />
<br />
Turn off viewport display time that was previously always on.<br />
<br />
Update mouse wheel for node editor - dispatch wheel events to canvas elements.<br />
<br />
Fix bug in <moi:Select> control when the <moi:Select> element had keyboard focus when the command UI document was torn down. Fixes bug reported by Bravlin on the forum here: http://moi3d.com/forum/index.php?webtag=MOI&msg=952.31<br />
<br />
Add setting for allowing snap plane change in ortho:<br><br />
[Drawing Aids]<br><br />
AllowSnapPlaneChangeInOrtho=y<br><br />
When set the orientation picker will align to surfaces in ortho views, by default it only aligns to surfaces in the 3D view.<br />
<br />
Update viewport text - fallback fonts. Switch to a fallback font if the regular UI font does not contain glyphs that we are going to be using in the viewport. This enables stuff like Japanese text to render properly in the viewport even if the UI font has not been set to a font with Japanese glyphs in it.<br />
<br />
Update Wine hit testing BGRA textures. Add option to use BGRA for the texture format for off-screen rendering. Make it used by default when running under Wine. Hopefully will solve selection problems where hit test map had unexpected byte ordering on the propietary Nvidia driver, as reported by Ronnie Ashlock.<br />
<br />
Add option to use same color picker dialog as v3 on Windows. Can be set under<br><br />
[Color Dialog]<br><br />
UseV3ColorDialog=y<br><br />
Requested by Barry-H in the forum here: http://moi3d.com/forum/index.php?webtag=MOI&msg=9100.241<br />
<br />
Update scripting moi.view.resetAll() - Update moi.view.resetAll() to take an optional parameter. Can be one of:<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;'auto' - Do automatic toggle between selected or all.<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;'selected' - Only reset to selected objects.<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;'all' - Only reset to all objects.<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;'default' - Reset to default startup views, keeping reversed views (bottom/back/left).<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;'harddefault' - Reset to startup views and get rid of reversed views (bottom view will become top).<br><br />
Requested on the forum by arial here: http://moi3d.com/forum/index.php?webtag=MOI&msg=8123.39<br />
<br />
Update edit style shortcut. Make Ctrl+Left click on the style line in the properties panel also work as a style edit shortcut in addition to right-click. Requested by shane in the forum here: http://moi3d.com/forum/index.php?webtag=MOI&msg=9245.5<br />
<br />
Add moi.ini option for window select behavior.<br><br />
[Selection]<br><br />
WindowSelectMode_Combo_Intersect_Contained=Combo<br><br />
Can be one of "Combo", "Intersect", or "Contained".<br />
<br />
Update mesh export - allow generating empty mesh files when saving to OBJ, STL, 3DS, LWO, FBX, or SKP mesh formats. Requested by Mikael Sundell for pipeline integration.<br />
<br />
<br />
== Oct-10-2019 ==<br />
<br />
[http://moi3d.com/forum/index.php?webtag=MOI&msg=9526.1 Forum announcement]<br />
<br />
The primary focus for this release is a new detailed object properties dialog and new annotation/dimension tools on the "Dim" tab in the side pane.<br />
<br />
The new extended properties dialog is triggered by the "Details..." button in the Properties Panel here:<br />
<br />
http://moi3d.com/forum/get_attachment.php?webtag=MOI&hash=f48bc5937a8f8647858ee122f26fd746&filename=detailed_object_properties1.png<br />
<br />
The Type: section of the detailed object properties dialog will give some additional information about the object type:<br />
<br />
http://moi3d.com/forum/get_attachment.php?webtag=MOI&hash=f523480b2b9504254b2208f7bdadf912&filename=detailed_object_properties2.png<br />
<br />
For curves it will report if it is an open curve or closed curve, whether it has the shape of a line, polyline, circle, arc, ellipse, elliptical arc, whether it is planar and the number of segments in the curve.<br />
<br />
For surface/solid objects it will report if it is a solid, open joined surface, or open individual surface, if it is a planar surface, the number of joined edges, number of naked edges, and number of faces.<br />
<br />
For edges it will report open, closed, joined, naked, line, circle, ellipse, elliptical arc, and planar.<br />
<br />
For a face selected it will report if it is a planar face.<br />
<br />
For an annotation selected it will report if it is a linear dimension, radial dimension, angular dimension, leader, or annotation text.<br />
<br />
When multiple objects are selected it will make a combined report like this:<br />
<br />
http://moi3d.com/forum/get_attachment.php?webtag=MOI&hash=a41d725c0dbdec497aebe4b79123c060&filename=detailed_object_properties3.png<br />
<br />
The type labels can be clicked on to filter the selection down to just the objects that match that label:<br />
<br />
http://moi3d.com/forum/get_attachment.php?webtag=MOI&hash=2dfca899ad8b98dc077ef0274ccf96d7&filename=detailed_object_properties4.png<br />
<br />
You can also hold down the shift key which will allow you to click multiple labels and the filtering will be triggered when you release the shift key. Holding down the Ctrl key while clicking on a label will remove its objects from the selection.<br />
<br />
Lower down on the dialog there are sections for Curve properties, Solid or surface properties, and Annotation properties if any of those types of objects are selected:<br />
<br />
http://moi3d.com/forum/get_attachment.php?webtag=MOI&hash=a2c2884805bea74d3f1008fa82fa241f&filename=detailed_object_properties5.png<br />
<br />
There you can calculate the length of curves, the surface area or volume of a surface or solid, and adjust properties for annotation objects.<br />
<br />
When you click the "Calc" button to calculate a value the button will be replaced with a numeric value and a small "Copy" icon will appear next to it. You can click on the value to copy it to the system clipboard.<br />
<br />
<br />
The other major new feature area are annotation objects which can be used to add dimensions and text to your model to use for documentation.<br />
<br />
These are added by 7 new commands in the Dim tab on the side pane here:<br />
<br />
http://moi3d.com/forum/get_attachment.php?webtag=MOI&hash=3ac8aa861ce0381ee8a301bb1f7eda82&filename=dim_tab.png<br />
<br />
The DimHorizontal command creates a linear dimension going in the x-axis direction of the construction plane:<br><br />
http://moi3d.com/forum/get_attachment.php?webtag=MOI&hash=adade4b11952793ad9e912e04ac1ee9d&filename=DimHorizontal.png<br />
<br />
The DimVertical command creates a linear dimension going in the y-axis direction of the construction plane:<br><br />
http://moi3d.com/forum/get_attachment.php?webtag=MOI&hash=c594a4d2c93cbc4b594fcc9482ab43ca&filename=DimVertical.png<br />
<br />
The DimAligned command creates a linear dimension going in any direction on the construction plane:<br><br />
http://moi3d.com/forum/get_attachment.php?webtag=MOI&hash=794f907b2a85dfc93ea5462f919680fa&filename=DimAligned.png<br />
<br />
All 3 of the linear dimension commands have a "From object" button in their command options which you can trigger to take the start and end point of a curve as the first 2 points of the dimension.<br />
<br />
The DimRadius command creates a radial dimension on a circle or arc curve:<br><br />
http://moi3d.com/forum/get_attachment.php?webtag=MOI&hash=3fe29174d3a44247c189f098635089bf&filename=DimRadius.png<br />
<br />
The DimAngle command creates an angular dimension on the construction plane. There is a "From lines" button in its command options which will allow you to select 2 line objects instead of picking points.<br><br />
http://moi3d.com/forum/get_attachment.php?webtag=MOI&hash=899daa66d11473a80215ced67ec3707f&filename=DimAngle.png<br />
<br />
The Leader command creates a leader object which is a text label with an arrow.<br><br />
http://moi3d.com/forum/get_attachment.php?webtag=MOI&hash=3e412e15007311c6f216db34d71e1907&filename=Leader.jpg<br />
<br />
The AnnotationText command creates an annotation text object which is a text box by itself, no arrows.<br />
<br />
Annotations are currently only saved to and from .3dm files. Saving them to DXF and PDF/AI files will be upcoming.<br />
<br />
There is an option in moi.ini for changing the display appearance of arrowheads in annotations by disabling mitered arrowhead tips:<br><br />
[Annotations]<br><br />
MiterArrowheads=y<br />
<br />
<br />
Other bug fixes and updates:<br />
<br />
Update FBX export - FBX version, object names, and materials. Add option for which FBX version to use under Options dialog &gt; Import/Export &gt; FBX options &gt; FBX version. Object names are now written to the FBX files instead of only generic "object1", "object2", ... names and styles are now written as materials in the FBX export. Writing materials can be disabled in moi.ini under [FBX Export] WriteMaterials=n<br />
<br />
Added SubD import option for open boundaries behavior under Options &gt; Import/Export &gt; SubD import options. Can be one of "Open boundaries: Keep corners" or "Open boundaries: Rounded". The default is "Keep corners" as per the discussion on the forum here:<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=9274.1<br><br />
It can be set to "Open boundaries: Rounded" to return to the previous beta's behavior at open boundary areas.<br />
<br />
Update DXF/PDF/AI hidden line layer controls. Add an optional prefix and/or suffix to be added to the style name when generating a 2D hidden line drawing to DXF/PDF/AI formats. Requested on the forum by miquik here:<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=9418.1<br />
<br />
Update view tabs - enable right click to get reverse views. Requested by Juraj in the forum here:<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=9473.10<br />
<br />
Add option in moi.ini for zooming using Shift+MMB:<br><br />
[View]<br><br />
ShiftMMBZoom=y<br />
<br />
Update file dialog filters. Make "All supported files" the first item in the file open filter list on both Windows and Mac (previously it was only on Mac). So that will be the default filter when the file dialog is first opened. This can be reverted to the previous behavior by a setting in moi.ini :<br><br />
[FileDialog]<br><br />
AllSupportedAtBottom=y<br><br />
Requested by agonyii in the discussion forum here:<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=9387.1<br />
<br />
Add moi.ini option for LWO export to not write styles as materials/surfaces in the LWO file.<br><br />
[LWO]<br><br />
WriteMaterialAssignments=y<br />
<br />
Fix bug with meshing dialog settings not being saved. Reported by stefan in the newsgroup here:<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=9266.51<br />
<br />
Fix Options dialog sub dialogs not displaying in full screen mode on macOS Mojave. Simplify dialog window z-ordering on Mac to avoid Mojave bug and hopefully be more resilient against any future Mac child window behavior changes. Reported by Martin in the forum here:<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=9443.1<br />
<br />
Fix improper mouse coordinate scaling on Mac w/Retina. Fix bug with longer distance delay before rotate/pan engages with V4 compared to V3, reported on the forum by Nis here:<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=9266.200<br />
<br />
Fix PDF export crash bug reported on the forum by Mip here:<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=9266.144<br />
<br />
Fix crash with some extended combination keystrokes such as Ctrl+Alt+Win+Numpad1 (QTBUG-36061). Fixes a crash bug reported through e-mail by Mark Tomlinson.<br />
<br />
Fixed a crash in display meshing with a file reported through e-mail by Bodo-Lutz.<br />
<br />
Fix crash in node editor revolve with small angle value, reported by Pilou in the forum here:<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=9476.119<br />
<br />
Updated HarmonyWare libs for STEP, SAT, and IGES file I/O from version 2.1.0 to 2.1.4, various bug fixes.<br />
<br />
Update STEP import/export - face colors. Support per-face colors for STEP file import and export. Fixes STEP import color bug reported on the forum by Fran6 here:<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=9339.4<br />
<br />
Fix 3DM import bug with incorrect circle orientation when reading 3DM files from CAD Exchanger. Fixes mangled import of mould.quadlobe.toy reported on the forum by LarryV here:<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=9266.164<br />
<br />
Update Construct &gt; Curve &gt; Isect "Curve from 2 views". Allow lines to be used as input for curve from 2 views, requested by Przemas in the forum here:<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=9440.1<br />
<br />
Update Trim - "stencil cut" options. Add options to Edit &gt; Trim for deleting the cutting objects and for having a joined together result with "keep all" instead of always separarting into pieces. Requested on the forum by Przemas here:<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=9436.1<br />
<br />
Fixed bug where left-click on style line of properties panel behaved the same as the right click shortcut for editing the style rather than putting up the style picker menu. Reported in the forum by Ralf here:<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=9266.22<br />
<br />
Update selection texture readback on Wine - test for Nvidia driver bug with red/blue bytes swapped and compensate. Also add calls to glFinish() on Wine to try and help avoid some other Nvidia driver bugs on Linux/Wine.<br />
<br />
Update command object model for properties undo. Add moi.command.addSelectedObjectsStateUndoUnit(); that can be called by a command that only modifies properties and doesn't add or delete objects, to get undo support.<br />
<br />
Add script properties to Face objects:<br><br />
face.domainMin : Property that returns u,v coordinate of the lower left of the surface's parameter range.<br><br />
face.domainMax : Property that returns u,v coordinate of the upper right of the surface's parameter range.<br><br />
face.evaluatePoint( uv, u_from_left, v_from_left ) : Function that evaluates a uv parameter value and returns a 3D point.<br><br />
face.evaluateNormal( uv ) : Function that evaluates a uv parameter value and returns a normal vector.<br><br />
face.evaluate1stDerivatives( uv, u_from_left, v_from_left ) : Function that evaluates a uv parameter value and returns first derivatives as a list containing [pt, du, dv, duv].<br><br />
face.evaluate2ndDerivatives( uv, u_from_left, v_from_left ) : Function that evaluates a uv parameter value and returns first and second derivatives as a list containing [pt, du, dv, duv, duu, dvv].<br><br />
face.isPlanar : Property that returns true if the surface is planar.<br><br />
face.planarFrame : Property that returns a coordinate from for a planar surface. Only valid if isPlanar returns true.<br><br />
face.isOnPlane( frame ) : Function that returns true if the surface is planar and is on the given coordinate frame's x/y plane.<br><br />
face.isOnParallelPlane( frame ) : Function that returns true if the surface is planar and is on a plane parallel to the given coordinate frame's x/y plane.<br><br />
<br />
<br />
== Jan-22-2020 ==<br />
<br />
[http://moi3d.com/forum/index.php?webtag=MOI&msg=9660.1 Forum announcement]<br />
<br />
New stuff:<br />
<br />
Added dimension property preset system for controlling initial properties of newly drawn dimensions.<br><br />
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 also create additional presets for project-specific settings.<br><br />
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.<br />
<br />
Implement sizing of the scene browser by dragging on its edge.<br />
<br />
Update dimensions arrowheads - Add option to position arrowheads to the outside, for linear dimension and angular dimension.<br />
<br />
Enable turning on edit points for annotations. This can be used to edit dimensions and also to reposition dimension text.<br><br />
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.<br />
<br />
Add circumference field. Add a circumference field in addition to radius/diameter for circle picking.<br><br />
Affects ArcTangent, Circle, CircleTangent, Cone, Cylinder, and Sphere commands. <br />
<br />
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.<br />
<br />
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.<br />
<br />
Add snap points on angular dimension objects<br />
<br />
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.<br />
<br />
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<br />
<br />
<br />
Fixed bug with dimension text getting distorted when coordinate values were larger than 2500.0<br />
<br />
Fix OBJ sub-d conversion crash when reading materials that had texture maps set up.<br><br />
Fixes a crash reported through e-mail by Phil Nolan.<br />
<br />
Fix sweep bug. History update with editing control points for Sweep was making unexpected results.<br><br />
Fixes bug reported in the forum by nameless here: http://moi3d.com/forum/index.php?webtag=MOI&msg=9526.196<br />
<br />
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.<br />
<br />
Fix bug with circle Tan Tan Radius reported through e-mail by Vladimir.<br />
<br />
Fix annotation window select bug - Leaders without any text were not working with window selection.<br />
<br />
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<br><br />
Fixes a bug reported in the forum by Axel here: http://moi3d.com/forum/index.php?webtag=MOI&msg=9615.1<br />
<br />
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.<br />
<br />
Update edge hit testing - Fix dead zone around outside of object with selection filters active. Fixes bug reported on the forum by Pior here:<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=8435.42<br />
<br />
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.<br />
<br />
Fixed annotation font picking bug that would cause the font size to grow to larger values on Mac just by opening the font dialog.<br />
<br />
Update detailed properties dialog styles. When multiple styles selected, list the styles.<br />
<br />
Fix annotation objects bounding box bug which caused Transform > Align to behave strangely with annotation objects. Reported by OSTexo on the forum here:<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=9526.11<br />
<br />
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:<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=9526.85<br />
<br />
Fix bug with Display: Wireframe mode on Meshing options dialog box not working. Reported on the forum by Schbeurd here:<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=9526.148<br />
<br />
Fix curve offset bug - Curve offset through point wasn't working correctly if closest point was at a tangent discontinuity.<br />
<br />
Show error dialog if trying to load a Rhino v6 or higher .3dm file.<br />
<br />
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:<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=9526.76<br />
<br />
Fixed bug where esc key could prevent hit testing from being reset on curve used for DimRadius. Reported through e-mail by Vladimir<br />
<br />
Update mesh dialog - Don't restore window corner position saved in moi.ini if the corner is not on a visible screen.<br />
<br />
Revert IGES import change - only use simple joins, not any vertex/edge splitting. Fixes regression reported on the forum by Will here:<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=9526.220<br />
<br />
Add moi.ini setting for showing grid in ortho views only, not the 3D view.<br><br />
[Grid]<br><br />
ShowGridInOrthoViewsOnly=y<br><br />
<br />
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 .<br><br />
Requested by Lestatdelc in the forum here:<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=9526.72<br />
<br />
Add moi.ini setting to disable selection edge flashing.<br><br />
[Selection]<br><br />
DisableSelectionEdgeFlash=n<br><br />
If set to =y then the edge flash feedback when selecting faces or breps will be disabled. Requested by Pior in the forum here:<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=8435.36<br />
<br />
Add moi.ini options for disabling preselection highlighting. In moi.ini under:<br><br />
[Selection]<br><br />
DisablePreselectionHighlighting=n<br><br />
DisablePreselectionHighlightingExceptCurves=n<br><br />
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:<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=8435.28<br />
<br />
Add moi.ini option to export FBX names as ascii [FBX Export] ConvertObjectNamesToAscii=y . Requested on the forum by Sven here:<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=9526.115<br />
<br />
<br />
scripting:<br />
<br />
Update view.setCameraAndTarget() function. Take an optional 3rd parameter of an "up" direction vector.<br />
<br />
Add script methods for dropping points:<br><br />
&nbsp;&nbsp;curve.dropPoint( pt ) - returns curve parameter value of closest point on the curve to the given 3D point.<br><br />
&nbsp;&nbsp;curvesegment.dropPoint( pt ) - returns curve parameter value of closest point on the curve segment to the given 3D point.<br><br />
&nbsp;&nbsp;face.dropPoint( pt ); - returns 2D uv coordinate point of closest point on the face to the given 3D point.<br><br />
&nbsp;&nbsp;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.<br><br />
<br />
Updated face.planarFrame() method for analytic planes to use the same x/y axis alignment that point picking snap plane uses.<br />
<br />
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.<br />
<br />
Add getEdgeIsoType script method<br><br />
Takes a parameter of which face to consider, an edge can be shared between 2 faces.<br><br />
var Iso = EdgeCrv.getEdgeIsoType( Face );<br><br />
Return value:<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;-1 : Edge is not an isocurve of the given face.<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;0 : Edge is an isocurve of the given face, going in the U direction.<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;1 : Edge is an isocurve of the given face, going in the V direction.<br />
<br />
<br />
== Sep-10-2020 ==<br />
<br />
[http://moi3d.com/forum/index.php?webtag=MOI&msg=9942.1 Forum announcement]<br />
<br />
Still not quite finished but really close! Exporting dimensions to PDF/AI formats is still in progress and almost there but I needed to release this new beta now because the current beta expires tomorrow. It has been quite a while since the last beta, please let me know if you see any new bugs surface in this release. It won't be much longer before v4 will be wrapped up.<br />
<br />
New stuff:<br />
<br />
Updated DXF - support import/export of dimension entities.<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;Import of TEXT, MTEXT, LEADER, and DIMENSION (linear, angular, radius/diameter sub types) is now supported. MoI will export dimensions to MTEXT, LEADER, and DIMENSION enties.<br />
<br />
Update annotations, add model units scaling behavior.<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;There is a new option for annotation behavior under Details > Annotation properties > "Scaling:" which has options for "Scaling: By screen size" or "Scaling: By model units".<br />
<br />
&nbsp;&nbsp;&nbsp;&nbsp;Scaling: "By screen size" works the same as the earlier v4 betas where text and arrowheads stay the same size on screen independent from the current zoom level.<br />
<br />
&nbsp;&nbsp;&nbsp;&nbsp;Scaling: "By model units" is a new option that makes the text and arrowheads to behave the same as geometry, where it is fixed at a certain unit size (given by the Height: field just after it) and will display larger or smaller when you zoom in and out. This option gives better compatibility with other CAD programs since almost all other programs work this way. When you import dimensions from DXF or from a 3DM file created in Rhino they will default to using this method so that things like title blocks where there are lines or other geometry making a table with text inside it will work as expected.<br />
<br />
Finished the AnnotationText and Leader command dialogs.<br />
<br />
Updated show points for dimension leader. Allow delete of selected edit points for leader objects.<br />
<br />
Handle file write errors - an error dialog will show now on file write failures like if the system ran out of disk space or permission denied.<br />
<br />
3DConnexion updates:<br><br />
&nbsp;&nbsp;&nbsp;&nbsp; - Updated 3dx default speed on Windows. On Windows 3dx translation and rotation speed was too fast, implement same default speed as Mac.<br><br />
&nbsp;&nbsp;&nbsp;&nbsp; - Add "Reverse roll" setting in Options dialog under Options > View > Rotate/Pan/Zoom options > 3DConnexion options. Requested by Fred in the forum here:<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;http://moi3d.com/forum/index.php?webtag=MOI&msg=9660.30<br><br />
&nbsp;&nbsp;&nbsp;&nbsp; - Also added individual settings for reversing twist or tilt in moi.ini, under:<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;[3Dconnexion]<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;&lt;...&gt;<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;ReverseTwist=y<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;ReverseTilt=y<br />
<br />
Update SaveAs to STEP/IGES/SAT formats for hidden objects.<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;By default don't write hidden objects to STEP/IGES/SAT formats when doing a SaveAs, unless turned on in moi.ini under:<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;[NURBS Export]<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;WriteBlankedObjects=y<br><br />
<br />
&nbsp;&nbsp;&nbsp;&nbsp;Also fixed regression in v4 where the blanked flag for hidden objects was not being set on IGES and SAT export.<br />
<br />
Update History<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;Enable face extrudes and the Rebuild command to trigger history updates.<br />
<br />
Curve offset overhaul - Improve curve offset robustness:<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;1 - when extending a line make a new analytic line as the result and use an analytic line/line intersection when possible for more accuracy.<br><br />
<br />
&nbsp;&nbsp;&nbsp;&nbsp;2 - Update how convex corner processing is done to avoid getting little loops which could confuse trim classification and were not getting trimmed out with shallow angle polylines as reported on the forum by Yanik here:<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;http://moi3d.com/forum/index.php?webtag=MOI&msg=9660.47<br />
<br />
&nbsp;&nbsp;&nbsp;&nbsp;3 - Do a better job of selecting intersections and screening out wild results from G2 reflection type extension. Should eliminate crazy looping extensions.<br />
<br />
Update grid axis display colors<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;Add in Z axis color option under Options > Grid. Grid axis lines are now colored according to their 3D orientation, so for example if you set the Z axis color to blue, then the vertical axis line in the front view will be colored blue. Previously the grid axis lines were colored the same in all viewports. You can re-enable that previous way by a setting in moi.ini :<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;[Grid]<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;<...><br><br />
&nbsp;&nbsp;&nbsp;&nbsp;UseOldStyleGridAxisColors=y<br />
<br />
&nbsp;&nbsp;&nbsp;&nbsp;Also added in an option for displaying the z axis grid line in the 3D view, under Options > Grid > "Show grid z axis in 3D view" checkbox.<br />
<br />
Update IGES export<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;Add an option under Options > Import/Export > IGES options > "Write solids as" for writing out solids as either an IGES type 186 "Manifold Solid B-Rep" entity or whether to write them as individual separate surfaces as MoI v3 and earlier always did.<br />
<br />
Update Draw solid > Text command - font styles<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;Add a Style: option to the Draw solid > Text command to make it possible to access styles of the font other than bold/italic. Requested on the forum by Javier here:<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;http://moi3d.com/forum/index.php?webtag=MOI&msg=8766.1<br />
<br />
Update error message when command not found.<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;Pop up a "command not found" dialog instead of a script exception dialog if trying to exec a command that was not found in any command folder.<br />
<br />
Update Help > About dialog<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;Add links for showing license keys and EULA from Help > About dialog. The license key dialog also has an option to clear out license keys.<br />
<br />
Detailed object properties dialog<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;Implement undo for annotation property changes in detailed object properties dialog.<br />
<br />
Update detailed properties panel types report<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;Add reports for all curves, all edges, and all brep edges if there is a mix of different types so there is one label that can be targeted for grabbing all edges or all curves instead of needing to shift+click on both "Open curves" and "Closed curves" for example.<br />
<br />
Add scale factor option for SubD import, in moi.ini<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;[SubD Import]<br />
&nbsp;&nbsp;&nbsp;&nbsp;ScaleFactor=1.0<br />
&nbsp;&nbsp;&nbsp;&nbsp;requested by Tudor in the forum here:<br />
&nbsp;&nbsp;&nbsp;&nbsp;http://moi3d.com/forum/index.php?webtag=MOI&msg=8665.109<br />
<br />
Update annotations bounding size<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;Don't include annotations in the bounding size for the edit frame or the properties panel, unless only annotations are selected.<br />
<br />
&nbsp;&nbsp;&nbsp;&nbsp;There is a moi.ini option to include annotations always in these sizes:<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;[Annotations] IncludeAnnotationsInBoundingBox=y<br><br />
&nbsp;&nbsp;&nbsp;&nbsp; <br />
&nbsp;&nbsp;&nbsp;&nbsp;Discussed in the forum here:<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;http://moi3d.com/forum/index.php?webtag=MOI&msg=9526.30<br />
&nbsp;&nbsp;&nbsp;&nbsp;<br />
Update persistence of "Mesh angle" option.<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;On startup, clamp the value for Options > View > Meshing parameters > Mesh angle to be between 10 and 45 degrees. It can be set lower by a startup script.<br />
<br />
Update annotation text display - substitution fonts<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;Enable use of substitution fonts in annotation text rendering. This will automatically switch to a fallback font if the current font does not have glyphs for unicode text characters being displayed.<br />
<br />
Update sub-d import<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;Use mesh object name in sub-d obj file conversion, and merge styles with the same names and colors. Requested in the forum by pafurijaz here:<br />
&nbsp;&nbsp;&nbsp;&nbsp;http://moi3d.com/forum/index.php?webtag=MOI&msg=9660.142<br />
<br />
Update edit styles dialog.<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;Show gray text on styles with nothing assigned to them same as the scene browser. Requested by pafurijaz in the forum here:<br />
&nbsp;&nbsp;&nbsp;&nbsp;http://moi3d.com/forum/index.php?webtag=MOI&msg=9660.148<br />
<br />
Update object dragging<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;Option for disabling object dragging so clicking on objects will only do selections and not any drags.Set under moi.ini under:<br />
&nbsp;&nbsp;&nbsp;&nbsp;[Selection]<br />
&nbsp;&nbsp;&nbsp;&nbsp;<...>'<br />
&nbsp;&nbsp;&nbsp;&nbsp;DisableObjectDrag=y<br />
<br />
<br />
<br />
Bug fixes:<br />
<br />
Fix window un-maximize bug on Windows - Fixed bug where the restored window position used for un-maximizing a window would keep growing larger on every run.<br />
<br />
Updated selection with filters on - if a selection filter is active, when clicking on an edge or face object to select it do the selection update immediately on the mouse press instead of mouse release. Fixes a bug reported by pior in the forum here:<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=9660.24<br />
<br />
Updated hit testing. Fixed bug where edge boost for selected breps was happening even for objects with selection lock on them. So in the case of boolean difference, the base object was having its edges boosted over top of any standalone curves in the same spot, preventing them from being selected. Fixes a bug reported through e-mail by Vladimir.<br />
<br />
Fixed annotation text bugs with text anchor property. The text anchor property was not persisting properly for all values.<br />
<br />
Fixed a bug with importing a DEGENERATE_TOROIDAL_SURFACE surface type through STEP format.<br />
<br />
Fixed a chamfer/fillet bug with skinny surfaces. If a chamfer surface was skinny (less than 10*tolerance across) it was possible for the chamfer surfaces to get connected improperly since it took just the first one within tolerance instead of the closest one.<br />
<br />
Fixed a bug with keyboard shortcut handling on Mac with a Japanese keyboard. Reported on the forum by nemuneko here:<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=9660.39<br />
<br />
Fixed shortcut key bug where cpaslock key was being interpreted as the letter "A" key.<br><br />
Reported on the forum by nemuneko here: http://moi3d.com/forum/index.php?webtag=MOI&msg=9660.39<br />
<br />
Fixed bugs with dialog size and positioning.<br><br />
Previously when showing a resizable dialog, if there was a saved size from a previous use it would restore that same size. The bug from that was if the dialog size was done on a high resolution monitor and now the use has switched to a different screen the saved dialog size could exceed the current screen resolution. Fixed by limiting saved dialog width and height by current screen size. Also if a saved position for a dialog will be used, check if it is visible on screen before using it. Additionally, don't allow resizable dialogs to shrink to down 0 width or height. Fixes bugs reported through e-mail by James.<br />
<br />
Fixed sweep bug - Freeform sweep framing had a bug when rail segments were anti-tangent. Fixes a bug reported through e-mail by Pilou.<br />
<br />
Updated dimension text rendering - Y positioning for glyphs used incorrect rouning. Was causing noticeable mis-positioned glyphs when using Gill Sans 18 pt font on Mac. Fixes a text display bug reported through e-mail by James.<br />
<br />
Variable radius filleting - linear blend fix. Fixed a bug in variable radius filleting with "linear blend" option where fillet surfaces were not being extended properly. Fixes a bug reported on the forum by Dan R here:<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=9753.1<br />
<br />
Fixed arrowhead bug - outside dimension arrowhead lines not placed correctly on larger scaled objects. Fixes a bug reported through e-mail by James.<br />
<br />
Fixed dimension feet & inches display - for feet&inches, check if the font does not support any Unicode fraction characters being used and if not replace with long form text like 1/2.<br />
<br />
Fixed STEP/IGES import of composite curve entities with G0 discontinuities. Look for G0 discontinuities in imported curves and break those out to separate curves.<br />
<br />
Fix file dialog bug - Fix bug where file open dialog called by script was not returning empty string when canceled. Fixes node editor bug reported in the forum by Wayne here:<br><br />
http://moi3d.com/forum/messages.php?webtag=MOI&msg=7713.880<br />
<br />
Fix Extrude bug with end caps disabled - When making a curve extrude with end caps disabled, a brep with disjoint shells would be created if there were any interior holes in the extrusion.<br />
<br />
Update sweep - true up rail segment ends. If segment end tangents are within 2 degrees of tangent, true them up to be exactly tangent if possible. This can improve corner mitering fails with segments that are nearly G1 but not quite. Fixes bug reported through e-mail by Salvatore.<br />
<br />
Fix curve fillet bugs -<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;Fix curve filleting bug reported by Cemortan_Tudor in the forum here:<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;http://moi3d.com/forum/index.php?webtag=MOI&msg=8665.97<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;and also another curve filleting bug reported a long time ago in the forum by macray here:<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=4958.1<br />
<br />
Fix select last created not working with drag/copy. Reported by Tudor in the forum here:<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=8665.115<br />
<br />
Fix bug in orient line / line<br><br />
Fix bug when line directions pointing opposite each other. Fixes a bug reported in the forum by Karsten here:<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=9476.422<br />
<br />
Fix file dialog crash on Mac Catalina OS<br><br />
Implement fix for QTBUG-83342 for an OS bug that could cause the file dialog to crash on Mac Catalina OS.<br />
<br />
<br />
Scripting updates:<br />
<br />
Added Curve.getIsTangentEdge( AngleToleranceDegrees /* optional, default = 2 degrees */ );<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;- returns true if the 2 surfaces on either side of the edge are tangent to each other.<br />
<br />
Added CurveSegment.getIsG1ToAdjacentSegment( 0 /* 0 for start, 1 for end */ );<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;- returns true if the next segment at the start or end is smooth to the current curve segment.<br />
<br />
moi.filesystem.shellExecute(), added wait for finished parameter.<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;moi.filesystem.shellExecute( path, params, wait ) now takes an optional 3rd boolean parameter for whether to wait until the called process has exited before returning. When used, the return value from shellExecute() is an object containing an .exitCode property for the integer exit code of the called process and an .output string parameter for any text written by the called process to stdout.<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;Example:<br />
&nbsp;&nbsp;&nbsp;&nbsp;var res = moi.filesystem.shellExecute( 'cmd /c dir c:\\', '', true );<br />
&nbsp;&nbsp;&nbsp;&nbsp;if ( res.output ) moi.ui.alert( res.output );<br />
<br />
Updated geometryDatabase::addObject()<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;Ignore the add if the given object is already in the geometry database. Fixes node editor bug reported by Brian here:<br />
&nbsp;&nbsp;&nbsp;&nbsp;http://moi3d.com/forum/index.php?webtag=MOI&msg=7777.1668<br />
<br />
Add face.isNew and curve.isNewEdge properties.<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;These will be set to true if the face or edge was newly generated instead of coming from a copy or split off piece of an original one.<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;example:<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;script: /* Select new edges at intersections after a boolean command */ moi.geometryDatabase.deselectAll();<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;var breps = moi.geometryDatabase.getLastCreated().getBReps(); for ( var i = 0; i < breps.length; ++i )<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;{ var edges = breps.item(i).getEdges(); for ( var j = 0; j < edges.length; ++j ) { var e = edges.item(j);<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;if ( e.isNewEdge ) e.selected = true; } }<br><br />
<br />
Add moi.geometryDatabase.getLastCreated(); - get an object list of the objects that were created by the last run command.<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;Example:<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;script: /* Select fillet surfaces */ moi.geometryDatabase.deselectAll(); var breps = moi.geometryDatabase.getLastCreated().getBReps();<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;for ( var i = 0; i < breps.length; ++i ) { var faces = breps.item(i).getFaces(); for ( var j = 0; j < faces.length; ++j )<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;{ var f = faces.item(j); if ( f.isNew ) f.selected = true; } }<br><br />
<br />
Update MoiList and ObjectList - Add list.clear() and objectlist.clear() methods which will empty out the list so it has length=0.<br />
<br />
Add curve.changeClosedCurveSeam( new_start_parameter, rebuild_circles /*optional, default = true */ );<br />
<br />
Update scripting - window moving and sizing methods.<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;Add window positioning methods:<br />
<br />
&nbsp;&nbsp;&nbsp;&nbsp;win.move( x, y ); - move the window to the given x,y screen coordinates. Can be given either one argument of an object with x,y properties, or 2 numeric arguments.<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;win.resize( width, height ) - resize the client area of a window to the given width and height. Can be given either one argument with x,y or width,height properties, or 2 numeric arguments.<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;win.getPosition() - returns an object with .x and .y properties for the window's screen coordinates.<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;win.getSize() - returns an object with .width and .height properties for the window's client area width and height.<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;win.getFrameSize() - returns an object with .width and .height properties for the window frame's width and height.<br />
<br />
&nbsp;&nbsp;&nbsp;&nbsp;Also added moi.ui.getScreenRect( element ) which will give the screen coordinates of the given element or UIPanel. Returns an object with .left, .top, .right, .bottom, .width, and .height properties.<br />
<br />
&nbsp;&nbsp;&nbsp;&nbsp;Example - increase the Options dialog width by 10 pixels:<br />
<br />
&nbsp;&nbsp;&nbsp;&nbsp;var uipanel = moi.ui.getUIPanel( 'moi://ui/options.htm' );<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;if ( uipanel )<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;{<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;var dlg = uipanel.moiWindow;<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;var pos = dlg.getSize(); pos.width += 10; dlg.resize( pos );<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;}<br />
<br />
&nbsp;&nbsp;&nbsp;&nbsp;Example - position the Options dialog to the right of the side pane:<br />
<br />
&nbsp;&nbsp;&nbsp;&nbsp;var options = moi.ui.getUIPanel( 'moi://ui/options.htm' );<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;if ( options )<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;{<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;var rc = moi.ui.getScreenRect(moi.ui.sidePane);<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;options.moiWindow.move(rc.right,rc.top);<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;}<br />
<br />
Update view tabs customization<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;Call a function UpdateViewTab( TabButton ) in the UI when a view tab has been reversed, so that it is possible to implement custom UI like having images there instead of text. Requested on the forum by Tim Whiteman here:<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=9821.1<br />
<br />
<br />
Update Esc script cancelling<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;Use different method to determine time since last wait for event. The previous method of watching calls to WaitableObject::waitForEvent() is not good because there are other kinds of event loops that do not go through WaitableObject, like modal dialogs or combo box dropdowns. The new method should handle all types of event loops.<br />
<br />
Update offset factory - Enable a new property factory.curveOffsetDistance to return the distance used by offset in through point mode.<br />
<br />
Update pointpicker, add .recalc() method Requested on the forum by Tudor here:<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=8665.221<br />
<br />
<br />
== Oct-27-2020 ==<br />
<br />
[http://moi3d.com/forum/index.php?webtag=MOI&msg=10011.1 Forum announcement]<br />
<br />
This should be the last v4 beta unless any new bugs pop up. The only remaining area for finishing v4 is to update the documentation.<br />
<br />
New stuff:<br />
<br />
Implemented dimension output to PDF/AI formats.<br />
<br />
Loosen cplane projection behavior for dimensions. Projection to the cplane is now a checkbox option inside the dim commands. When turned off you can now do things like pick the first point in the 3D view and then the next point in an ortho view instead of all points being projected to the cplane of the first pick (which can still be enabled by the Project to cplane checkbox option). You can also now create a linear dimension going in the z-axis direction in the 3D view.<br />
<br />
Lightweight conics for PDF/AI export - Use specialized fitter for circles, arcs, ellipses and elliptical arcs to make a lighter weight control point structure. Can be disabled by a setting in moi.ini, add in an entry under [AI/PDF Export] :<br><br />
[AI/PDF Export] UseLightweightConics=n<br />
<br />
Update dimension grid snap. Fix bug where grid snap was snapping to a displaced grid if the initial picked point was not on a grid point. Fixes bug reported in the forum by Larry here:<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=9942.117<br />
<br />
64-bit 3DM file output - switch to Rhino v5 3DM output by default and fixed a bug to allow 3DM files sizes greater than 2GB. Also added a moi.ini option to control the default 3DM version:<br><br />
[3DM] Version= Can be set to Version=4 to make Rhino v4 3DM output which was what MoI v3 used.<br />
<br />
Update FBX default version. Update default FBX file version to 2013/7.3/7300 since Blender does not support 2010/6.1/6100 .<br />
<br />
PDF/AI export - Fix bug with "Preserve units" + "Center on page" option. Fixes a bug reported on the forum by David here:<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=9942.46<br />
<br />
Update DXF spline import - handle DXF output from CorelDRAW with duplicated points. Fixes DXF import problems reported on the forum here:<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=9946.1<br />
<br />
Fixed an infinite loop bug in Qt when showing popup windows in a certain order.<br />
<br />
Update curve control point editing - maintain analytic curves. When doing control point editing on multi segment curves, maintain analytic curve types for segments that are not affected by the current control point selection.<br />
<br />
Updated Esc key handling. If there is a waitable object that has called allowNestedCancel(), don't make Esc cancel the entire command. This should give equivalent behavior for command flow whether clicking on tthe "Cancel" button or using Esc. Fixes a problem reported in the forum by Larry here:<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=9918.1<br />
<br />
Update color picker dialog - fix dialog size shifting when using "Pick Screen Color" button.<br><br />
Fixes a bug reported by Wayne on the forum here:<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=9942.102<br />
<br />
Updated SubD import library with fixes for a couple of remaining crash cases when processing malformed mesh topology.<br />
<br />
Update IGES/STEP output - option for not generating output as an assembly structure. Can be set in moi.ini for IGES or STEP output under:<br><br />
[IGES] ExportFlattenAssemblies=y<br><br />
[STEP] ExportFlattenAssemblies=y<br><br />
Set to =y to generate output without assembly structures same as V3. Should fix problem with exporting to Condacam reported by Joerg in the forum here:<br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=9942.105<br><br />
<br />
Scroll bar bug fix - Update Qt webkit to fix bug when dragging scroll bar and releasing mouse outside window resetting scroll position to top. Fixes a bug reported by Frederick on the forum here:<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=9995.1<br><br />
<br />
Fix edge selection bug after boolean union in areas where planes were merged together. Fixes a bug reported in e-mail by Pilou.<br />
<br />
Update IncrementalSave - Maintain leading 0 padding in current filename, so File_0020.3dm for example will make File_0021.3dm instead of just File_21.3dm as it previously did.<br />
<br />
Add Align option to Draw solid > Text command. Requested by Stefano in the forum here:<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=9942.99<br />
<br />
Add option for showing annotations in a specific color instead of by style color. In moi.ini under the [View] section:<br><br />
AnnotationColorMode=ByStyle<br><br />
AnnotationFixedColor=0,0,0<br><br />
The color mode can be either ByStyle or FixedColor. If set to AnnotationColorMode=FixedColor then they will show using the color from AnnotationFixedColor=R,G,B (each with a value from 0 to 255).<br><br />
Requested by Stefano in the forum here:<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=9950.1<br><br />
<br />
Add Value: property to Details... properties dialog for dimensions for copying value to the clipboard. Requested by Mindset in the forum here:<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=6925.570<br />
<br />
Add option in moi.ini for not limiting Options > View > Meshing parameters > "Mesh angle" value:<br><br />
[View]<br><br />
NoMeshAngleLimit=y<br><br />
<br />
<br />
Scripting:<br />
<br />
Add moi.ui.getLastOrientationPickerFrame() - returns the coordinate frame that was picked with the last OrientationPicker.<br />
<br />
Update startup scripts - call startup scripts after first UI panel layout has been completed so things like the side pane tabs can be manipulated by the script.<br />
<br />
<br />
== Dec-21-2020 ==<br />
<br />
[http://moi3d.com/forum/index.php?webtag=MOI&msg=10075.1 Forum announcement]<br />
<br />
I'm just about ready for the final v4 release. There were a few bugs fixed since the previous v4 beta and the v4 final release, and so I'm publishing this final v4 beta with those last fixes included.<br />
<br />
New stuff:<br />
<br />
Documentation has been updated for v4.<br />
<br />
Update angular dimension extension lines. Only draw extension lines for angular dimensions from the arc to the picked points, not from arc all the way to the center. Fixes angular dimension issues reported in the forum by Mik here:<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=10011.36<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=10011.50<br />
<br />
Update DimRadius command. Fix problem with placing first dimension point further away than the arc's center point. Fixes bug reported by WN on the forum here:<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=10011.47<br />
<br />
Update Inset command - Allow thickness of 0 in Inset command for some additional effects. Discussed in the forum here:<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=10029.2<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=10029.20<br />
<br />
<br />
Bug fixes:<br />
<br />
Fixed regression with named object selection by typing in object names in the XYZ input control. This was broken a couple builds back with a new "Command not found" error message showing if the input did not match any command names.<br />
<br />
Fixed regression in numeric input field handling. Match behavior of v3 when erasing all text in an input field, set a value of 0 in this case. Fixes regression reported by PaQ in the forum here:<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=10011.150<br />
<br />
Update static objects rendering - check for 32-bit index buffer support before trying to use it.<br />
<br />
Update Chamfer - make analytic plane for chamfer surface when possible, fixes Inset failing on a newly generated chamfer which would succeed when saved to 3dm and reloaded. Reported on the forum here:<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=10051.1<br />
<br />
Update Mac font fallbacks. Fix Qt problem where DefaultFontFallbacks.plist file is not present on Catalina OS anymore.<br />
<br />
Update BGFX error handling - Put up a message box if BGFX returns a fatal error and guard against using it if it was not initialized, rather than crashing.<br />
<br />
Update Undo settings - fix shutdown bug where undo settings were not being written to moi.ini on app shutdown.<br />
<br />
Update SKP export - fix bug where SKP export didn't work right with some filenames with extended characters.<br />
<br />
<br />
Scripting:<br />
<br />
Update PointPicker script properties so a script can tell if there is a straight snap currently active.<br><br />
Added pointpicker.hasBasePt , pointpicker.hasStraightSnap , pointpicker.straightSnapDir read only properties.<br><br />
This makes it possible to do a "direction lock" shortcut key:<br><br />
var pp = moi.ui.getActivePointPicker(); if ( pp && pp.hasStraightSnap ) { pp.restrictToLinePtDir( pp.basePt, pp.straightSnapDir, true ); }</div>Michael Gibsonhttp://moi3d.com/wiki/index.php?title=Resources&diff=910Resources2020-12-13T10:40:18Z<p>Michael Gibson: </p>
<hr />
<div><big>Links to useful MoI information on the web</big>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;([[Resources_%28french%29|Version Française ici]])<br />
<br />
[http://moi3d.com MoI home page] <br />
<br />
[http://moi3d.com/forum MoI discussion forum]<br />
<br />
[[FAQ|Frequently Asked Questions]]<br />
<br />
[http://moi3d.com/4.0/docs/moi_help.htm MoI help file online] &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;([http://moi3d.com/4.0/docs/moi_help_French.htm French])&nbsp;&nbsp;([http://moi3d.com/2.0/docs/moi_help_German.htm German])&nbsp;&nbsp;([http://moi3d.com/2.0/docs/moi_help_Spanish.htm Spanish])&nbsp;&nbsp;([http://moi3d.com/1.0/docs/moi_help_Italian.htm Italian])<br />
<br />
[[Shortcut Keys]]<br />
<br />
[[Hidden Secrets]]<br />
<br />
[[Scripting]] <br />
<br />
[http://kyticka.webzdarma.cz/3d/moi/ Petr's MoI page], contains a variety of MoI information including scripts and custom commands. ([http://moiscript.weebly.com/ French version])<br />
<br />
[http://moi.maxsm.net/ Max Smirnov's MoI scripts], numerous advanced scripts from Max. [http://moi.maxsm.net/media/files/ Max's file archive ]([http://moiscript.weebly.com/ French version])<br />
<br />
[http://moi3d.com/forum/index.php?webtag=MOI&msg=7841.6 Burr's script archive - collection of scripts that have been posted on the forum]<br />
<br />
[[V4Beta|V4 Beta release notes]]<br />
<br />
[[Nodeeditor|Node editor plugin]]<br />
<br />
[http://moi3d.com/3.0/EULA_retail.rtf MoI End User License Agreement]<br />
<br />
<br />
Language packs: ([http://moi3d.com/2.0/docs/v2_Spanish_update.zip Spanish v2 update])&nbsp;&nbsp;([http://moi3d.com/1.0/docs/Italian_language_pack.zip Italian UI and help file]) ([http://moi3d.com/2.0/docs/french_command_reference_update.zip French v2 update]) ([http://moi3d.com/2.0/docs/v2_German_update.zip German v2 update])<br />
<br />
<br />
<br />
== Tutorials ==<br />
[http://moi3d.com/3.0/docs/tutorials.htm MoI documentation video tutorials]<br />
<br />
[https://gumroad.com/l/fGqqS MoI for Game Assets video tutorial by Arrimus 3D - 5 hours $9.99 on Gumroad]<br />
<br />
[https://gumroad.com/l/vavRq MoI Basics video tutorial by Bojan Koturanović - 7 hours $25 on Gumroad]<br />
<br />
[http://moiusers.blogspot.com/ Introductory videos by Tom Meeks] - videos with narration covering a lot of basics.<br />
<br />
[https://www.youtube.com/playlist?list=PLu-75I3Zd8NS0AH3O75nOuerVz9O1rTUI Tutorials on YouTube by Liminal4D]<br />
<br />
[http://moi3d.com/forum/index.php?webtag=MOI&msg=9816.1 48 German language video tutorials by Stefan Schneller on jewelry design]<br />
<br />
[http://moi3d.com/download/Moi3d-Overview.pdf Introduction and overview PDF by Fabien Franzen]<br />
<br />
[http://moi3d.com/forum/index.php?webtag=MOI&msg=7389.1 Sub-d car modeling in MoI by Ed Ferguson]<br />
<br />
[http://moi3d.com/forum/index.php?webtag=MOI&msg=9899.1 Custom truck tutorial by Ed Ferguson]<br />
<br />
[http://www.k4icy.com/tutorials.html Mike Maynard's tutorials], and here 18 of them [http://moiscript.weebly.com/ in French by Pilou]<br />
<br />
[http://moi3d.com/forum/index.php?webtag=MOI&msg=6058.1 Videos from Andrei Samardac]<br />
<br />
[http://moi3d.com/forum/index.php?webtag=MOI&msg=3842.1 Video from lyes on modeling a SpacePilot controller]<br />
<br />
[http://vimeo.com/channels/moi3d Vimeo channel with tutorials from lyes]<br />
<br />
[http://bitreality.blogspot.com/ Joe's classical column video tutorials]<br />
<br />
[http://moi3d.com/forum/index.php?webtag=MOI&msg=402.9 Japanese bathtub tutorial]<br />
<br />
[http://moi3d.com/forum/index.php?webtag=MOI&msg=446.17 Object repair tutorial]<br />
<br />
[http://moi3d.com/forum/index.php?webtag=MOI&msg=284.1 Ring tutorial by Jesse Kaufman], and [http://moi3d.com/forum/index.php?webtag=MOI&msg=510.5 #2], [http://moi3d.com/forum/index.php?webtag=MOI&msg=623.1 #3], <br />
[http://moi3d.com/forum/index.php?webtag=MOI&msg=556.1 #4],<br />
[http://moi3d.com/forum/index.php?webtag=MOI&msg=538.6 #5],<br />
[http://moi3d.com/forum/index.php?webtag=MOI&msg=536.1 #6]<br />
<br />
[http://moi3d.com/forum/index.php?webtag=MOI&msg=1175.3 Simple ring using rail revolve], and [http://moi3d.com/forum/index.php?webtag=MOI&msg=1175.5 variant using sweep + scaling rail for more control]<br />
<br />
[http://moi3d.com/forum/index.php?webtag=MOI&msg=1057.1 Product design forums modeling challenges] (not specific to MoI but useful for general CAD modeling strategy).<br />
<br />
[http://moi3d.com/forum/index.php?webtag=MOI&msg=606.4 Simple Intarsia type design]<br />
<br />
[http://moi3d.com/forum/index.php?webtag=MOI&msg=1171.2 Creating a 3-toed base foot]<br />
<br />
[http://moi3d.com/forum/index.php?webtag=MOI&msg=1514.1 Modeling a water can out of one smooth surface]<br />
<br />
[http://moi3d.com/forum/index.php?webtag=MOI&msg=2546.1 Ferrari 599 GTB tutorial videos by lyes]<br />
<br />
[http://moi3d.com/forum/index.php?webtag=MOI&msg=2429.1 Snowman figure by PaQ]<br />
<br />
[http://cid-30cffdfa97399495.skydrive.live.com/self.aspx/.Public/Accurate|_Tapers|_MoI|_V2.zip Accurate tapers using Expressions by Danny] ( Not really needed since Extrude now has a taper function good if you want to learn basic trig) D.T.<br />
<br />
[http://moi3d.com/forum/index.php?webtag=MOI&msg=3814.1 Discussions on ship hull techniques]<br />
<br />
[http://moiscript.weebly.com/ Videos: Functions of the Manual by Pilou (in French)]<br />
<br />
[http://vimeo.com/30765016 Making accurate screw threads video from OSTexo]<br />
<br />
[http://vimeo.com/30168354 Flow workflow video from danperk]<br />
<br />
[http://moi3d.com/forum/index.php?webtag=MOI&msg=8845.16 Car modeling techniques by Zarkow], and [http://moi3d.com/forum/index.php?webtag=MOI&msg=8845.5 #2] and [http://moi3d.com/forum/index.php?webtag=MOI&msg=9956.1 video tutorials]<br />
<br />
== Helper programs ==<br />
Some standalone small programs to help accomplish specific tasks.<br />
<br />
=== Obj23dmWireframe converter ===<br />
[http://moi3d.com/download/Obj23dmWireframe.zip Download Obj23dmWireframe converter]<br />
<br />
This enables bringing polygon data in an .obj file into MoI to use as a construction guide.<br />
Unzip it to some folder, and then you can run the Obj23dmWireframe.exe program. It will prompt you for the name of an .obj file to read, and after that the name of a .3dm file to create. It will read all the polygon data from the obj file and convert the edges of polygons into line segments, and then write those line segments to the 3dm file. You can then load that 3dm file into MoI and use those line segments to snap on to. Originally posted on the forum [http://moi3d.com/forum/index.php?webtag=MOI&msg=1099.1 here].<br />
<br />
=== MergeOBJ utility ===<br />
[http://moi3d.com/download/MergeOBJ.exe Download MergeOBJ utility]<br />
<br />
This utility program can combine several input OBJ files into one single OBJ file. This may be useful if you want to build up a set of different OBJ files possibly by exporting pieces with different mesh settings, and then combine them into one OBJ file if your target program wants to work with only a single file. This was created because the freely available mesh editing tools have a tendency to remove vertex normals when combining files together, this utility will preserve vertex normals. Announced on the forum [http://moi3d.com/forum/index.php?webtag=MOI&msg=3570.12 here].<br />
<br />
=== Old utilities ===<br />
[http://moi3d.com/download/3dmCurves2DXF.zip 3dmCurves2DXF converter] - This could convert curves in a 3DM file to a DXF file to be used for CAM programs. It's not needed anymore since MoI v3 now directly supports DXF file export.<br><br><br />
These utilities were to help with MoI v1 which did not export material assignments to OBJ files. Since MoI v2 can control material assignments by assigning Styles, these are no longer necessary but are still included here for v1 users.<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;[http://moi3d.com/download/SeparateOBJ.zip SeparateOBJ editor] - Breaks an OBJ file exported from MoI v1 into smaller pieces and puts separate material assignments on each piece for import into programs that require that.<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;[http://moi3d.com/download/MergeOBJ_old.zip MergeOBJ editor (old version)] - Edits an OBJ file to combine all the different objects in it into one single object so there will be just one material for the whole thing.</div>Michael Gibsonhttp://moi3d.com/wiki/index.php?title=V4Beta&diff=909V4Beta2020-10-29T07:47:22Z<p>Michael Gibson: </p>
<hr />
<div><big>Release notes for each V4 beta release are gathered here.</big><br />
<br />
== Nov-12-2017 ==<br />
<br />
[http://moi3d.com/forum/index.php?webtag=MOI&msg=8675.1 Forum announcement]<br />
<br />
V4 is a major rewrite with changes on many levels so please be on the lookout for any bugs.<br />
<br />
The main new functionality is that MoI is now a 64-bit program for both Windows and Mac and the Mac version is a native build and doesn't use Wineskin anymore.<br />
<br />
New system requirements are Windows 7/8/10 64-bit or macOS 10.8 - 10.13 .<br />
<br />
Polygon conversion can now use all your system memory instead of running into 32-bit memory limits.<br />
<br />
A lot of various little quirky things should be tuned up for the Mac version.<br />
<br />
The only known areas still not quite working yet are snap text labels and dotted/dashed line styles in viewports and Mac trackpad gestures aren't fully functional yet.<br />
<br />
<br />
== Nov-18-2017 ==<br />
<br />
[http://moi3d.com/forum/index.php?webtag=MOI&msg=8682.1 Forum announcement]<br />
<br />
Bug fixes:<br />
<br />
Fix for the frozen UI bug when restoring a maximized main window from a minimized or hidden state. Please let me know if you see it again.<br />
<br />
Fix Mac deployment issue that was preventing things from working on OS X 10.8 and 10.9, MoI should run ok there now.<br />
<br />
Fix font name bug where MoI V4 would overwrite the UI font name property that V3 uses in moi.ini and so the V3 UI font changed after you ran V4. They should now stay separate.<br />
<br />
Fix bug where dropdown controls in commands wouldn't reinitialize to their last used value. Reported by bemfarmer in the forum here:<br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=8675.204<br />
<br />
Fix construction line snapping bug reported in the forum by Moujiik here:<br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=8675.119<br />
<br />
Not a whole lot of changes, normally I would have waited until a bit more were batched up but the frozen UI bug was pretty significant so I wanted to try and nail that one down soon.<br />
<br />
<br />
== Nov-27-2017 ==<br />
<br />
[http://moi3d.com/forum/index.php?webtag=MOI&msg=8704.1 Forum announcement]<br />
<br />
Bug fixes:<br />
<br />
Saving to IGES and STEP files - fixed a bug where using .stp or .igs file extensions wasn't working on Mac.<br />
<br />
Mac full screen mode - fix for the problem where the view controls window would show on the desktop space, sending you back to the desktop the first time you moved the mouse over a viewport after going to full screen. Please let me know if you see it again.<br />
<br />
Updated shortcut key editor - Make the "Key" column expand to whatever width is necessary to show the longest key combo. Fixes problem reported in the forum by Metin here:<br />
http://moi3d.com/forum/messages.php?webtag=MOI&msg=8682.42<br />
<br />
Viewport toolbar - fixed a bug where doing view manipulation using the bottom viewport toolbar could miss the mouse up event and get stuck.<br />
<br />
Orientation picker - fixed a sporadic drawing bug with the orientation picker reported on the forum by Max here:<br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=8682.16<br />
<br />
Shortcut keys with Shift - Fixed a bug in shortcut keys using shift + number keys. V4 was generating Shift+1 as Shift+! which was incompatible with V3, V3 would convert it back to Shift+1 which was then not recognized by V4. V4 should now generate Shift+1 for that key combination and not Shift+! anymore. Fixes a bug reported on the forum by Marco here:<br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=8682.50<br />
<br />
Background images - Fixed a crash when making a background image from a bitmap file with lower than 32-bit color depth. Reported on the forum by Vladimir here:<br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=8682.100<br />
<br />
Undo - Fixed a bug where undo wouldn't find the proper object to restore in some cases. Reported on the forum by Val here:<br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=8682.83<br />
<br />
<br />
Scripting:<br />
<br />
moi.geometryDatabase.findStyle() - fixed a bug in the findStyle() function for the "create if not found" case, reported on the forum by Max here:<br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=8682.16<br />
<br />
obj.getBoundingBox() - The boolean parameter for getting high accuracy bounds was marked as required in v4, while in v3 it was optional with a default of false. Updated v4 to match v3.<br />
<br />
moi.filesystem.openFileStream - switch to use QTextStream for reading to get better unicode support. Unicode files with byte order marks should be supported now, the default will be UTF-8 if no byte order mark is found. Also added new methods .setWriteBOM( boolean ) which you can call to make writing a text file write the byte order mark at the front (default is no BOM), and .setCodec( name ) to have specific control over what encoding to use for reading or writing. Supported codecs are listed here: http://doc.qt.io/qt-5/qtextcodec.html#details .<br />
<br />
moi://appdata/ - add support for moi://appdata/ URLs so you can load HTML resources like images from the MoI app data directory. moi://appdata/ will resolve to %AppData%\Moi on Windows and to ~/Library/Application Support/Moi on Mac.<br />
<br />
String to integer conversion - Updated so a string value of "1.0" will be successfully converted to an integer value of 1 rather than rejecting it. Fixes a change in behavior from v3 to v4 that broke some of Brian's scripts.<br />
<br />
factory.setValue() - switched to v3 behavior so sending the wrong object type doesn't trigger an exception. Fixes the SpurGearProfile script.<br />
<br />
<br />
== Dec-11-2017 ==<br />
<br />
[http://moi3d.com/forum/index.php?webtag=MOI&msg=8731.1 Forum announcement]<br />
<br />
Bug fixes and changes:<br />
<br />
Mac full screen mode - getting sent back to the desktop the first time you moved the mouse over each viewport after going to full screen mode should be finally fixed! Also Ctrl+Cmd+F shortcut key for full screen toggle should now work.<br />
<br />
Mac trackpad and Magic Mouse - Finished implementing multitouch view navigation for the trackpad and Magic Mouse on Mac. Magic Mouse should be back to zooming instead of panning. The Zoom speed can be adjusted in moi.ini [MultiTouch] MagicMouseZoomSpeed=1.0 . Change this to something like 2.0 to make the default behavior faster or 0.5 to go slower. You can also hold down the Ctrl key to go slower as well.<br />
<br />
Mac ignored mouse bug - Fix for bug where mousemove events would stop working in certain conditions when restoring the main window from hidden or showing a modal dialog. Fixes bug reported by Finema here: http://moi3d.com/forum/index.php?webtag=MOI&msg=8675.189<br />
<br />
Updated "On" object snap mechanics - Changed the way On object snap for curves works to get better accuracy with curves far from the origin.<br />
<br />
Incorrect default values for some commands - Fixed a bug where the default values for the Text and Rebuild commands were incorrect on locales that use commas for the decimal separator. Reported by Vladimir on the forum here: http://moi3d.com/forum/index.php?webtag=MOI&msg=8704.32<br />
<br />
Trim - fixed a bug in the Edit &gt; Trim command where if an object was set to be both an object to be trimmed as well as a cutting object it could get hidden unexpectedly.<br />
<br />
Command button highlighting - Fix for command buttons remaining highlighted after command ends. Reported by Vladimir on the forum here: http://moi3d.com/forum/index.php?webtag=MOI&msg=8704.32<br />
<br />
Read-only file handling - Fix bug where using File &gt; Save wasn't prompting for a new file name when the current opened file was set to read-only. Reported in the forum by mhasse here: http://moi3d.com/forum/index.php?webtag=MOI&msg=8714.1<br />
<br />
Crash fix for newer CPU/Older OS combination - Fix for 0xc000001d illegal instruction exception when running on Win7 SP0 with a newer AVX-capable CPU.<br />
<br />
Hidden-line generation - Increase Canvas megapixel size limit from 175 to 1000.<br />
<br />
Degenerate box error - fixed bug where a script error would be displayed if you made a degenerate rectangle in any of the Draw solid &gt; Box commands.<br />
<br />
Update text input fields - Text input fields were only applying typed in values when the input panel was open, or when the Enter or Tab keys were pressed, not if just clicking outside the field as they now will. Should fix a PDF export dialog bug reported by reported by Moujiik here: http://moi3d.com/forum/index.php?webtag=MOI&msg=8704.15<br />
<br />
<br />
Scripting:<br />
<br />
viewport.setCameraAndTarget() - Fixed bug in viewport.setCameraAndTarget() function, reported in the forum by Ralf here: http://moi3d.com/forum/index.php?webtag=MOI&msg=8704.25<br />
<br />
Process memory use limit - Added option in moi.ini for limiting maximum memory use - Windows only. Can be set in moi.ini under [Settings] MaxProcessMemoryUse=x . Requested by Burr on the forum here: http://moi3d.com/forum/index.php?webtag=MOI&msg=8704.26<br />
<br />
moi.view.screenshot - Fix bug where the moi.view.screenshot() method was capturing the wrong area of the screen on Mac.<br />
<br />
<br />
Enable setting default values for controls from shortcut keys. UI controls can now be triggered or initialized with custom values if the control's id is supplied in the command-line parameters for the command. For buttons, the presence of the button's id value in command line parameters will trigger a UI event for the button the first time that it is shown, this will have the same effect as clicking the button.<br />
For dropdowns and checkboxes, the presence of the control's id in an id=value pair will use that value to initialize the control rather than taking the last used or default value as normal.<br />
<br />
This makes it possible to set up shortcut keys that package up different options within commands, for example:<br />
<br />
Trim addtrimpoints removekeepmode=keep<br />
<br />
Trim addtrimpoints removekeepmode=remove<br />
<br />
Trim isocurve isodir=u<br />
<br />
Trim isocurve isodir=v<br />
<br />
Line bothsides=true<br />
<br />
Extrude tapered<br />
<br />
<br />
<br />
== Feb-9-2018 ==<br />
<br />
[http://moi3d.com/forum/index.php?webtag=MOI&msg=8814.1 Forum announcement]<br />
<br />
Text labels inside viewports still not implemented yet, that's the last remaining thing still left to get v4 fully caught up.<br />
<br />
<br />
Bug fixes and changes:<br />
<br />
<br />
Dashed/Dotted line styles implemented so things like the grid, construction lines, and hidden line display should be looking proper now.<br />
<br />
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.<br />
<br />
DXF import layers - Support reading layers in the DXF file as Styles in MoI.<br />
<br />
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<br />
<br />
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.<br />
<br />
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.<br />
<br />
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.<br />
<br />
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<br />
<br />
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.<br />
<br />
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.<br />
<br />
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.<br />
<br />
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<br />
<br />
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<br />
<br />
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.<br />
<br />
Windows shutdown bug - Fix bug when shutting down Windows while MoI is still open reported by Vladimir in the forum here:<br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=8731.81<br />
<br />
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<br />
<br />
Fix crash on program shutdown if license key dialog was canceled.<br />
<br />
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<br />
<br />
<br />
<br />
Scripting:<br />
<br />
Added additional script interface for Curve and CurveSegment objects.<br />
<br />
For both Curves and CurveSegments:<br />
<br />
crv.domainMin - Property that returns lower bound of the curve's parametric domain.<br />
<br />
crv.domainMax - Property that returns upper bound of the curve's parametric domain.<br />
<br />
crv.evaluatePoint( t ) - Function returning a point for the given parameter value.<br />
<br />
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.<br />
<br />
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.<br />
<br />
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...<br />
<br />
crv.isPlanar - Property that returns true if the curve's control polygon is planar.<br />
<br />
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.<br />
<br />
crv.isOnPlane( frame ) - Function that returns true if the curve is on the given frame's x/y plane.<br />
<br />
crv.isOnParallelPlane( frame ) - Function that returns true if the curve is on a plane parallel to the given frame's x/y plane.<br />
<br />
crv.isClosed - Property that returns true if the curve is closed.<br />
<br />
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).<br />
<br />
crv.isDegenerate - Property that returns true if the curve has a degenerate control polygon with all the points stacked in the same spot.<br />
<br />
crv.isLine - Property that returns true if the curve has the shape of a line.<br />
<br />
crv.isSimpleLine - Property that returns true if the curve is a simple line segment made up of only 2 control points.<br />
<br />
crv.isCircle - Property that returns true if the curve is a circle.<br />
<br />
crv.isArc - Property that returns true if the curve is a circular arc.<br />
<br />
crv.isEllipse - Property that returns true if the curve is an ellipse (either a full ellipse or an elliptical arc).<br />
<br />
crv.conicFrame - Property that returns the coordinate frame of a circle, arc, or ellipse. Only valid if isCircle, isArc, or isEllipse returns true.<br />
<br />
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.<br />
<br />
crv.conicRadiusY - Property that returns the y-axis radius of an ellipse. Only valid if isEllipse returns true.<br />
<br />
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.<br />
<br />
<br />
The following only apply to Curves, not CurveSegments:<br />
<br />
crv.isClickSelected - Property that returns true if the curve was selected by a mouse click action.<br />
<br />
crv.clickSelectionPoint - Property that returns the point on the curve where it was click selected. Only valid if isClickSelected returns true.<br />
<br />
crv.clickSelectionParam - Property that returns the parameter value of the curve where it was click selected. Only valid if isClickSelected returns true.<br />
<br />
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.<br />
<br />
<br />
Added moi.ui.systemDPI property.<br />
<br />
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.<br />
<br />
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.<br />
<br />
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.<br />
<br />
Add a container with id="CommandBarCustomUI" in CommandBar.htm to make it easier to populate the UI from a startup script.<br />
Example:<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;var container = moi.ui.commandBar.CommandBarCustomUI;<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;container.insertAdjacentHTML( 'beforeEnd', '<moi:CommandButton>Test1</moi:CommandButton>' );<br />
<br />
Appdata/scripts directory - you can add a scripts folder inside appdata and MoI will also check there for running an "instant script".<br />
<br />
<br />
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.<br><br />
The trackpadgesture event object has these properties:<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;event.gestureType : string value of 'Scroll', 'SmartZoom', 'Zoom', or 'Rotate'.<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;event.deltaX, event.deltaY : movement for Scroll , 2 fingers swiping.<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;event.numTouches : number of touch points being used for Scroll.<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;event.scaleFactor : scale factor for pinch/zoom<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;event.angle : angle change for Rotate.<br><br />
<br />
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();<br />
<br />
<br />
== May-12-2018 ==<br />
<br />
[http://moi3d.com/forum/index.php?webtag=MOI&msg=8936.1 Forum announcement]<br />
<br />
I think this version is all caught up now, the last remaining things that were missing from v3 such as text labels inside viewports are now implemented and all regression bugs that have been reported should now be fixed. So if that holds up this should be a major milestone for v4 where I'll now be switching to working on new features rather than rewriting stuff from v3.<br />
<br />
Bug fixes and changes:<br />
<br />
<br />
Implemented text rendering inside viewports for things like snapping tag labels ("End", "Mid", etc...)<br />
<br />
OBJ export - Fixed bug where invalid OBJ file would be generated if object names had extended characters in them. Reported through e-mail by Lewis.<br />
<br />
STEP import - Fixed crash bug in STEP import reported through e-mail by John Lewis.<br />
<br />
iMac Pro draw speed - Fixed bug where too frequent UI updates caused a noticeable draw speed slowdown compared to V3 on some high dpi Mac machines. Fixes bug reported by Metin.<br />
<br />
Mouse cursors - Fixed various bugs where the mouse cursor wasn't updating properly, reported by Vladimir in the forum here:<br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=8814.128<br />
<br />
Text field right click context menu - Fixed a bug with right click on text input fields in menus being offset.<br />
<br />
Menu hover state - Fixed a bug where when launching a menu, the button hover state on the launching UI would get stuck until another click.<br />
<br />
Color picker custom colors - Custom colors set in the color picker dialog are now saved to and restored from moi.ini so they will persist between program sessions.<br />
Fixes bug reported by Moujiik on the forum here: http://moi3d.com/forum/index.php?webtag=MOI&msg=8855.5<br />
<br />
Object properties - Fixed bug where cached objects in the async worker process wouldn't get updated if style, name, or selection changed.<br />
Fixes bug reported on the newsgroup by Brian here: http://moi3d.com/forum/index.php?webtag=MOI&msg=8814.81<br />
<br />
Selection filter crash - Fix for crash when setting a style selection filter, reported by Shane on the forum here: http://moi3d.com/forum/index.php?webtag=MOI&msg=8872.1<br />
<br />
Busy script interruption - Scripts that do a lot of calculation in loops can now be interrupted by pushing the Escape key.<br />
Requested on the forum by Marco here: http://moi3d.com/forum/index.php?webtag=MOI&msg=8814.63<br />
<br />
Trackpad scroll gesture - Fix bug where Mac trackpad scroll gesture could be treated as a mouse wheel event,<br />
if the first touch happened on a different window.<br />
Fixes bug reported by Max in the forum here: http://moi3d.com/forum/index.php?webtag=MOI&msg=8814.21<br />
<br />
DXF export arcs and circles - Previously arcs and circles that had a normal vector pointing straight down in the negative z axis direction would get flipped in the export, because there are a couple of programs that do not read those correctly. But this direction flip is bad for CNC usage, so the default now is to not flip them. It is possible to return to the previous flipping behavior by a setting in moi.ini: [DXF Export] FlipNegativeZAxisCirclesAndArcs=y<br />
Fixes a bug reported in the forum by Vladimir here: http://moi3d.com/forum/index.php?webtag=MOI&msg=6925.419<br />
<br />
VSync - Added option in moi.ini to limit screen redraw with vsync, might help if you are experiencing a tearing type effect in the display.<br />
Can be set under [View] VSync=y . Requested by torsten in the forum here: http://moi3d.com/forum/index.php?webtag=MOI&msg=8814.140<br />
<br />
Additional command dirs - Add moi.ini setting under [Commands] AdditionalCommandsDirs= which can be set to a semi-colon delimited list of additional directories to look for commands, in addition to the built in commands and appdata commands.<br><br />
[Commands]<br><br />
AdditionalCommandsDirs=c:\path1;c:\path2<br><br />
Requested on the forum by Hamish here: http://moi3d.com/forum/messages.php?webtag=MOI&msg=8814.97<br />
<br />
FBX export vertex colors - Add option in moi.ini for writing vertex colors to FBX exports. Can be enabled by setting:<br><br />
[FBX Export]<br><br />
WriteVertexColors=y<br><br />
Requested by Stefan in the forum here: http://moi3d.com/forum/index.php?webtag=MOI&msg=8853.5<br />
<br />
Graphics API override - Add moi.ini option for which graphics API to use. <br />
On Windows or Linux/Wine a specific render engine can be controlled by a setting in moi.ini, under the [View] section, GraphicsAPI key:<br><br />
[View]<br><br />
GraphicsAPI=Direct3D11<br><br />
or<br><br />
GraphicsAPI=OpenGL<br />
<br />
Startup working directory - Add moi.ini options for setting the initial working directory on startup.<br><br />
[Settings]<br><br />
StartupWorkingDirectory=<br><br />
SaveWorkingDirectoryAtExit=n<br><br />
Requested by Marc in the forum here: http://moi3d.com/forum/index.php?webtag=MOI&msg=8814.88<br />
<br />
Trackpad as mouse wheel - Add setting in moi.ini for making Mac trackpad scroll used as a mouse wheel zoom as older MoI versions did.<br><br />
[MultiTouch]<br><br />
UseTrackpadScrollAsMouseWheel=y<br><br />
Requested by Marc in the forum here: http://moi3d.com/forum/index.php?webtag=MOI&msg=8814.88<br />
<br />
<br />
<br />
== Jun-6-2018 ==<br />
<br />
[http://moi3d.com/forum/index.php?webtag=MOI&msg=8966.1 Forum announcement]<br />
<br />
New stuff:<br />
<br />
Major overhaul of STEP/IGES/SAT importing.<br />
<br />
These imports will now no longer block the main thread so it won't look like MoI is frozen while it is loading a big file.<br />
<br />
The loading happens in 2 phases, first an initial scan of the file that doesn't do too much work except logging the structure of where objects are located. Then the next heavier phase of processing the objects will make use of multiple CPU cores for a major speed increase. So there should be a very substantial performance increase in loading large STEP, IGES, or SAT files in this version.<br />
<br />
Also the HarmonyWare libraries used for working with these formats have now been updated from version 1.7.11 to the latest 2.0.8 release and there are a lot of bug fixes from that. A notable one is that some incorrect positioning of instances should be good now. Also some other fixes on MoI's side should make for colors coming through from STEP files that were previously missed.<br />
<br />
It would be cool to hear how the new multi-core enabled importer performs on some big files compared to MoI v3!<br />
<br />
Also please let me know if you see any new problems with any particular imports. If you do please try to send the file to me at moi@moi3d.com so I can test with it over here, I will keep any files confidential.<br />
<br />
<br />
Other things:<br />
<br />
Window selection Mac - Fix for sluggish selection window dragging reported by James through e-mail.<br />
<br />
Properties panel size display - Adjusted the quick size calculation for the properties panel to hopefully increase accuracy a little.<br />
<br />
Properties panel - Report closed edges as a distinct object type. Fixes an issue of inconsistent behavior between curves and edges reported through e-mail by Scott.<br />
<br />
Edit frame grip size - Added option in moi.ini for setting edit frame grip handle pixel size, so it can be adjusted for higher res displays,<br />
Requested by Barry in the forum here: http://moi3d.com/forum/index.php?webtag=MOI&msg=8960.1<br><br />
[View]<br><br />
EditFrameGripPixelSize=24<br />
<br />
DisableOnSrfInOrtho setting - Added scripting access to DisableOnSrfInOrtho setting so it can be toggled at runtime under moi.drawingAids.disableOnSrfInOrtho . Requested on the forum by immortalx here: http://moi3d.com/forum/index.php?webtag=MOI&msg=8947.1<br />
<br />
NURBS Export RotateZUpToYUp option - Added option in moi.ini for option for exporting STEP/IGES/SAT formats to rotate the export to a Y up coordinate system.<br><br />
[NURBS Export]<br><br />
RotateZUpToYUp=y<br />
<br />
Update viewport right click - Don't push Cancel buttons with a viewport right click, it's too easy to accidentally cancel a long file import or things like that.<br />
<br />
<br />
<br />
== Aug-28-2018 ==<br />
<br />
[http://moi3d.com/forum/index.php?webtag=MOI&msg=9044.1 Forum announcement]<br />
<br />
The main focus for this beta is performance enhancements.<br />
<br />
3DM files will now use multiple CPU cores for loading so large files should load significantly faster and show a progress bar.<br />
<br />
Also the display engine has been enhanced to take advantage of modern GPUs - display data is now cached in the GPU's VRAM which should result in faster redraw speed for large files.<br />
<br />
<br />
Other bug fixes and changes:<br />
<br />
Mac version multiple windows - Add "Window" menu to Mac version top menu. Shows all open files and allows switching between them easier. Also support Cmd+Tilde (Cmd+~) and Cmd+Shift+Tilde for switching to next/prev window.<br />
<br />
Construction line bug fix - Fix construction line creation bug reported by jopo in the forum here:<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=8966.53<br />
<br />
Object drag bug fix - fix bug for moving the mouse over another viewport when dragging objects. Reported by Burr on the forum here:<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=9016.1<br />
<br />
Mac AMD performance - fix problem with default buffer location with OpenGL on some AMD cards that was causing slow redraws on some machines like iMac pro.<br />
<br />
Updated Mac file open behavior. To match the Mac document based application framework behavior, if a file is opened by drag/drop or by double-clicking on the desktop icon do not open a new window for it if there is an existing window with it already open.<br />
<br />
3DS Max zoom compatibility - Added moi.ini option for Alt+Ctrl+MMB zoom for 3DS Max compatibility. Can be set under:<br><br />
[View]<br><br />
AltCtrlMMBZoom=y<br><br />
<br />
Object snap labels on left side - Add moi.ini option to make object snap labels shown to the left of the target point, can be useful if you're drawing directly on a screen such as with a Cintiq screen. Can be set in moi.ini under:<br><br />
[Drawing Aids]<br><br />
ShowObjectSnapLabelToLeft=n<br><br />
<br />
Shortcut keys update - On Windows if there is a [Shortcut Keys Mac] section of the moi.ini file, read and write shortcuts from there so you can copy the moi.ini file over from Mac to Windows. Fixes issue reported on the forum by Matt here:<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=8970.1<br />
<br />
STEP import bug fix - Fixed import bug for file MF2018.STEP getting stuck at 36%, reported on the forum by Marco here:<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=8966.9<br><br />
Also fixed a different STEP import bug reported by Eric Bucy through e-mail.<br />
<br />
Fixed file loader UI bug - Fix bug where main window would not maximize properly when trying to show progress bar UI before main window was initially displayed, such as when MoI launched by double clicking a STP file. Fixes bug reported in the forum by OSTexo here:<br><br />
OSTexo http://moi3d.com/forum/index.php?webtag=MOI&msg=8966.40<br />
<br />
File notes - Add notes property that is saved to and loaded from .3dm files. Can be accessed by setting up a shortcut key with:<br><br />
script: moi.ui.createDialog( 'moi://ui/NotesDialog.htm', 'resizeable' );<br />
<br />
Viewport right click option - Add option for v3 behavior of right clicking in a viewport working as a shortcut for pushing the Cancel button when a command only has Cancel and not Done. Can be set in moi.ini under:<br><br />
[View]<br />
DoRightClickCancel=y<br />
<br />
Add new appdata directory option - MoI will now look for an appdata directory that has been created alongside "commands", "ui", etc... and if found will use that location as the appdata folder, to make it possible to store everything within a single directory.<br />
<br />
Add moi.ini setting for selection hit test radius<br><br />
[View]<br><br />
SelectionHitTestRadius=12<br><br />
<br />
Scene browser scripting - Added script access to scene browser items so it is possible to make a startup script that expands sections on program startup. To do that put the following in a .js file in your Moi appdata startup folder:<br><br />
var items = moi.ui.sceneBrowser.rootItems;<br><br />
for ( var i = 0; i &lt; items.length; ++i )<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;items[i].expanded = true;<br />
<br />
<br />
== Oct-17-2018 ==<br />
<br />
[http://moi3d.com/forum/index.php?webtag=MOI&msg=9100.1 Forum announcement]<br />
<br />
The main focus for this beta is a polygon sub-d surface to NURBS conversion method, available on the side pane under SubD > Create > From file. This allows you to open an .obj file that contains a sub-d polygon cage and have it converted to a high quality NURBS object in MoI.<br />
<br />
Some other stuff:<br />
<br />
Settings for page size are now available in PDF/AI exports.<br />
<br />
Fixed crash bug when modifying display mesh angle.<br />
<br />
Updated STEP export to fix problem with object names not coming through to SolidWorks, Fusion360 and KeyShot.<br />
<br />
Added moi.ini option to set current file name with foreign file types. In moi.ini under [Settings] SetNameWhenOpeningAllFileTypes=y When set, the current file name is set for all file opens not just .3dm files. Requested by Alex on the forum here: http://moi3d.com/forum/index.php?webtag=MOI&msg=9044.41<br />
<br />
Updated DXF export to allow the dialog to be suppressed and options set by script. Parameters that can be set are:<br><br />
// DXF export function parameter options:<br><br />
//<br><br />
// NoUI=true<br><br />
// ExportType=2d | 3d<br><br />
// ProjectionView=top | 3d | front | right<br><br />
// WriteCurvesAs=splines | cubicsplines | polylines<br><br />
// PolylineAngleDegrees=10.0<br><br />
// UseSimpleEntities=true<br><br />
// NumDecimalPlaces=12<br><br />
//<br><br />
// GenerateHiddenLines=false<br><br />
// HiddenLineLayerMode=fromstyle | custom<br><br />
// HiddenLineLayerName=Hidden lines (layer name to use when layer mode = custom)<br><br />
// IgnoreTangentEdges=false<br><br />
// Resolution=25.0<br><br />
<br />
<br />
== Feb-27-2019 ==<br />
<br />
[http://moi3d.com/forum/messages.php?webtag=MOI&msg=9266.1 Forum announcement]<br />
<br />
New stuff:<br />
<br />
Numerous fixes for SubD import crashes and translation issues.<br />
<br />
Fix for SubD imports on objects of small scale.<br />
<br />
Fix for SubD imports with meshes that have multiple volumes that partially overlap each other. Previously these could sometimes not get separated into different solids properly.<br />
<br />
Update SubD import to read materials from the .obj file and make Styles from them in MoI. Also patch combining will pay attention to material assignments<br />
so patches will not get combined across different materials. Can be disabled under Options > Import/Export > SubD import options > "Use materials" checkbox.<br />
<br />
Add SubD import option for either fewer patches but with denser surface control points, or more patches around extraordinary vertices but with fewer surface<br />
control points in regular areas of the mesh. Set under Options > Import/Export > SubD import options > "Patch type".<br />
<br />
Update multiple selection - Add option for doing multiple selection only when shift key is down. Options > General > Multiple selection: "Always" or "Only when Shift is down".<br />
<br />
Fix cylinder boolean union bug. There was a bug with combining cylinders in boolean union when the cylinders had opposite axis directions. This was the cause of some occasional mysterious missing fillets where the fillet surface was ending up displaced some distance away from the trim boundaries.<br />
<br />
Fix a sporadic crash in Chamfer reported through e-mail by Sebastian Bielecki.<br />
<br />
Fix crash in center object snap after copy/pasting an arc edge curve.<br />
<br />
Update tesselator - fix degenerate span display bug. Fixes bug in mesher for making display meshes on surfaces with nearly degenerate spans. Fixes a bug reported through PM by BarryH.<br />
<br />
Add option for scaling STL export to target unit system. Under Options > Import/Export > STL Options > "Export units conversion".<br />
<br />
Update curve filleting - Enable "Constant distance" fillet mode for curves, currently only works for line segments.<br />
<br />
Fix 3DConnexion buttons bug where undo/redo on space mouse button presses was not working, reported by Ivan in the forum here: http://moi3d.com/forum/index.php?webtag=MOI&msg=9130.1<br />
<br />
Update command parameter parsing. Allow quotes to control parameter parsing so values with spaces can be used, for example: ArrayDir mode="Extent, Count" . Fixes a problem reported on the forum by Bravlin here: http://moi3d.com/forum/index.php?webtag=MOI&msg=6087.75<br />
<br />
Update shortcut keys parameters - start and end scripts. Make it possible for shortcut keys to define parameters for oncommandstart="" and oncommandend="" for script to run at the start or end of the command. For example this shortcut will run a script when the line command ends to select it: line oncommandend="moi.geometryDatabase.selectLastCreated();"<br />
<br />
Update shortcut keys for file commands. Enable controlling the file dialog file type with keyboard shortcuts by adding a filetype= option in the shortcut key. For example a shortcut key with: Open filetype=igs will make the file dialog have the .igs file type active. Can be used with Open, SaveAs, Import, and Export commands. Requested in the forum by Peticel here: http://moi3d.com/forum/index.php?webtag=MOI&msg=9118.1<br />
<br />
Update command UI automation - ordering. Some UI events cause the command to finish, so to be able to control a command the ordering of the events needs to be controllable.<br />
Rework the UI event triggering so they are triggered in the order given in the command line parameters. This makes the following possible:<br><br />
extrude tapered draftangle=20 distanceinput=10<br><br />
Previously that didn't work because the distanceinput is earlier in the UI and so got triggered earlier and ended the command before tapered or draftangle could be processed.<br />
<br />
Fix properties panel line length editing bug reported through e-mail by Tim Hickox.<br />
<br />
Fix tolerance bug that could cause small sized objects to get mangled boundaries when joined, regression from v3.<br />
<br />
Fix IGES import joining regression - Make iges entity 128 surfaces join together if joining is enabled, regression from v3.<br />
<br />
Updated IGES import joining - allow T junctures to join instead of only simple matching endpoints only.<br />
<br />
Fix IGES import bug for some cases with edges on seams of closed surfaces. Fixes an IGES file sent through e-mail by Charles Ludeke.<br />
<br />
Fix excessive load time with STEP file that had a degenerate surface in it.<br />
<br />
Update license key file paths - Allow a path to moi_v3_license.key to be passed as a command line parameter or set as an environment variable<br />
like moi_v3_license.key=path . Requested by Mariusz in the forum here: http://moi3d.com/forum/index.php?webtag=MOI&msg=9106.1<br />
<br />
If straight snap snap angle is set to 0, disable x/y plane straight snap line snapping.<br />
<br />
Add warning if running on Mac case sensitive file system.<br />
<br />
Update file dialogs - Save and restore last used file dialog location on all platforms.<br />
<br />
Update file loader progress bar - Add full path as tooltip to file name label.<br />
<br />
Add option for limiting the number of CPU cores used by file loading. Can be set under: [Settings] FileLoaderThreadLimit=x<br />
<br />
Update scripting - exe command line args<br><br />
moi.getExecutableCommandLineArgs() - returns list of command line parameters for launching the executable.<br><br />
moi.geometryDatabase.initialFileToLoad - filename for initial file to load by executable command line parameter.<br />
<br />
Scripting - Add moi.command.currentCommandName property for getting the current running command name by script, or empty string if no command currently running. Requested by Bravlin on the forum here: http://moi3d.com/forum/index.php?webtag=MOI&msg=7238.61<br />
<br />
Update Scene Browser, Types > Edges and Types > Faces behavior. Don't show edges or faces of hidden breps unless shift is down. Makes it easier to turn edges on/off without hidden breps being shown. Requested through e-mail by Tim Hickox<br />
<br />
Update scene browser - Make sure scene browser is initialized before any startup script that wants to access it is run.<br />
<br />
Scene browser script access - Add more script access to SceneBrowser: sceneBrowser.objects, sceneBrowser.types, and sceneBrowser.styles to get the root item for those sections.<br><br />
Added methods to a scene browser item:<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;item.find('name') - will search all children and return an item with that name or null if none present.<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;item.alterStatus(mode,rightclick) - alter the status area of an item, that's the one with the eye icon. Mode can be one of 'show','hide','lock','unlock'. Optional boolean parameter for rightclick will make it behave like a right mouse button click.<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;item.select(mode,rightclick) - alter the selection dot of an item. Mode can be one of 'toggle','select','deselect','filteron','filteroff'. Optional boolean parameter for rightclick will make it behave like a right mouse button click.<br><br />
Here's an example that toggles the selection dot for the Blue item under styles: moi.ui.scenebrowser.styles.find('Blue').select('toggle');<br />
<br />
Fix selection redraw bug on static objects where objects could get stuck looking like they were selected in the Intersect, Project, Silhouette, Join, and Separate commands. Reported through e-mail by James Elliott.<br />
<br />
Fix bug in Add pt with rational curves, reported in the forum by Bravlin here: http://moi3d.com/forum/index.php?webtag=MOI&msg=9216.34<br />
<br />
Fix for wrong selection display on iMac with NVIDIA GeForce GT 750M 1024 MB - work around driver bug.<br />
<br />
Fix for mouse move events getting stacked up on some Mac machines.<br />
<br />
Fix .skp and .fbx format export with unicode file names on Mac. Exporting to .skp or .fbx formats with certain kinds certain kinds of extended characters in the filename would fail.<br />
<br />
Update filename display Mac - Fix bug where filenames with <> characters were being treated as html tags.<br />
<br />
Fix MRU file list Mac - Fixed bug where on Mac if a file had a \ in it, it would not persist to the MRU list properly.<br />
<br />
Fix Mac crash when exporting to .3ds format.<br />
<br />
Fix QtWebKit Ctrl/Meta flippage on Mac. Make the HTML event object use Ctrl for Ctrl and Cmd for Cmd instead of flipped on Mac.<br />
<br />
Turn off viewport display time that was previously always on.<br />
<br />
Update mouse wheel for node editor - dispatch wheel events to canvas elements.<br />
<br />
Fix bug in <moi:Select> control when the <moi:Select> element had keyboard focus when the command UI document was torn down. Fixes bug reported by Bravlin on the forum here: http://moi3d.com/forum/index.php?webtag=MOI&msg=952.31<br />
<br />
Add setting for allowing snap plane change in ortho:<br><br />
[Drawing Aids]<br><br />
AllowSnapPlaneChangeInOrtho=y<br><br />
When set the orientation picker will align to surfaces in ortho views, by default it only aligns to surfaces in the 3D view.<br />
<br />
Update viewport text - fallback fonts. Switch to a fallback font if the regular UI font does not contain glyphs that we are going to be using in the viewport. This enables stuff like Japanese text to render properly in the viewport even if the UI font has not been set to a font with Japanese glyphs in it.<br />
<br />
Update Wine hit testing BGRA textures. Add option to use BGRA for the texture format for off-screen rendering. Make it used by default when running under Wine. Hopefully will solve selection problems where hit test map had unexpected byte ordering on the propietary Nvidia driver, as reported by Ronnie Ashlock.<br />
<br />
Add option to use same color picker dialog as v3 on Windows. Can be set under<br><br />
[Color Dialog]<br><br />
UseV3ColorDialog=y<br><br />
Requested by Barry-H in the forum here: http://moi3d.com/forum/index.php?webtag=MOI&msg=9100.241<br />
<br />
Update scripting moi.view.resetAll() - Update moi.view.resetAll() to take an optional parameter. Can be one of:<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;'auto' - Do automatic toggle between selected or all.<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;'selected' - Only reset to selected objects.<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;'all' - Only reset to all objects.<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;'default' - Reset to default startup views, keeping reversed views (bottom/back/left).<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;'harddefault' - Reset to startup views and get rid of reversed views (bottom view will become top).<br><br />
Requested on the forum by arial here: http://moi3d.com/forum/index.php?webtag=MOI&msg=8123.39<br />
<br />
Update edit style shortcut. Make Ctrl+Left click on the style line in the properties panel also work as a style edit shortcut in addition to right-click. Requested by shane in the forum here: http://moi3d.com/forum/index.php?webtag=MOI&msg=9245.5<br />
<br />
Add moi.ini option for window select behavior.<br><br />
[Selection]<br><br />
WindowSelectMode_Combo_Intersect_Contained=Combo<br><br />
Can be one of "Combo", "Intersect", or "Contained".<br />
<br />
Update mesh export - allow generating empty mesh files when saving to OBJ, STL, 3DS, LWO, FBX, or SKP mesh formats. Requested by Mikael Sundell for pipeline integration.<br />
<br />
<br />
== Oct-10-2019 ==<br />
<br />
[http://moi3d.com/forum/index.php?webtag=MOI&msg=9526.1 Forum announcement]<br />
<br />
The primary focus for this release is a new detailed object properties dialog and new annotation/dimension tools on the "Dim" tab in the side pane.<br />
<br />
The new extended properties dialog is triggered by the "Details..." button in the Properties Panel here:<br />
<br />
http://moi3d.com/forum/get_attachment.php?webtag=MOI&hash=f48bc5937a8f8647858ee122f26fd746&filename=detailed_object_properties1.png<br />
<br />
The Type: section of the detailed object properties dialog will give some additional information about the object type:<br />
<br />
http://moi3d.com/forum/get_attachment.php?webtag=MOI&hash=f523480b2b9504254b2208f7bdadf912&filename=detailed_object_properties2.png<br />
<br />
For curves it will report if it is an open curve or closed curve, whether it has the shape of a line, polyline, circle, arc, ellipse, elliptical arc, whether it is planar and the number of segments in the curve.<br />
<br />
For surface/solid objects it will report if it is a solid, open joined surface, or open individual surface, if it is a planar surface, the number of joined edges, number of naked edges, and number of faces.<br />
<br />
For edges it will report open, closed, joined, naked, line, circle, ellipse, elliptical arc, and planar.<br />
<br />
For a face selected it will report if it is a planar face.<br />
<br />
For an annotation selected it will report if it is a linear dimension, radial dimension, angular dimension, leader, or annotation text.<br />
<br />
When multiple objects are selected it will make a combined report like this:<br />
<br />
http://moi3d.com/forum/get_attachment.php?webtag=MOI&hash=a41d725c0dbdec497aebe4b79123c060&filename=detailed_object_properties3.png<br />
<br />
The type labels can be clicked on to filter the selection down to just the objects that match that label:<br />
<br />
http://moi3d.com/forum/get_attachment.php?webtag=MOI&hash=2dfca899ad8b98dc077ef0274ccf96d7&filename=detailed_object_properties4.png<br />
<br />
You can also hold down the shift key which will allow you to click multiple labels and the filtering will be triggered when you release the shift key. Holding down the Ctrl key while clicking on a label will remove its objects from the selection.<br />
<br />
Lower down on the dialog there are sections for Curve properties, Solid or surface properties, and Annotation properties if any of those types of objects are selected:<br />
<br />
http://moi3d.com/forum/get_attachment.php?webtag=MOI&hash=a2c2884805bea74d3f1008fa82fa241f&filename=detailed_object_properties5.png<br />
<br />
There you can calculate the length of curves, the surface area or volume of a surface or solid, and adjust properties for annotation objects.<br />
<br />
When you click the "Calc" button to calculate a value the button will be replaced with a numeric value and a small "Copy" icon will appear next to it. You can click on the value to copy it to the system clipboard.<br />
<br />
<br />
The other major new feature area are annotation objects which can be used to add dimensions and text to your model to use for documentation.<br />
<br />
These are added by 7 new commands in the Dim tab on the side pane here:<br />
<br />
http://moi3d.com/forum/get_attachment.php?webtag=MOI&hash=3ac8aa861ce0381ee8a301bb1f7eda82&filename=dim_tab.png<br />
<br />
The DimHorizontal command creates a linear dimension going in the x-axis direction of the construction plane:<br><br />
http://moi3d.com/forum/get_attachment.php?webtag=MOI&hash=adade4b11952793ad9e912e04ac1ee9d&filename=DimHorizontal.png<br />
<br />
The DimVertical command creates a linear dimension going in the y-axis direction of the construction plane:<br><br />
http://moi3d.com/forum/get_attachment.php?webtag=MOI&hash=c594a4d2c93cbc4b594fcc9482ab43ca&filename=DimVertical.png<br />
<br />
The DimAligned command creates a linear dimension going in any direction on the construction plane:<br><br />
http://moi3d.com/forum/get_attachment.php?webtag=MOI&hash=794f907b2a85dfc93ea5462f919680fa&filename=DimAligned.png<br />
<br />
All 3 of the linear dimension commands have a "From object" button in their command options which you can trigger to take the start and end point of a curve as the first 2 points of the dimension.<br />
<br />
The DimRadius command creates a radial dimension on a circle or arc curve:<br><br />
http://moi3d.com/forum/get_attachment.php?webtag=MOI&hash=3fe29174d3a44247c189f098635089bf&filename=DimRadius.png<br />
<br />
The DimAngle command creates an angular dimension on the construction plane. There is a "From lines" button in its command options which will allow you to select 2 line objects instead of picking points.<br><br />
http://moi3d.com/forum/get_attachment.php?webtag=MOI&hash=899daa66d11473a80215ced67ec3707f&filename=DimAngle.png<br />
<br />
The Leader command creates a leader object which is a text label with an arrow.<br><br />
http://moi3d.com/forum/get_attachment.php?webtag=MOI&hash=3e412e15007311c6f216db34d71e1907&filename=Leader.jpg<br />
<br />
The AnnotationText command creates an annotation text object which is a text box by itself, no arrows.<br />
<br />
Annotations are currently only saved to and from .3dm files. Saving them to DXF and PDF/AI files will be upcoming.<br />
<br />
There is an option in moi.ini for changing the display appearance of arrowheads in annotations by disabling mitered arrowhead tips:<br><br />
[Annotations]<br><br />
MiterArrowheads=y<br />
<br />
<br />
Other bug fixes and updates:<br />
<br />
Update FBX export - FBX version, object names, and materials. Add option for which FBX version to use under Options dialog &gt; Import/Export &gt; FBX options &gt; FBX version. Object names are now written to the FBX files instead of only generic "object1", "object2", ... names and styles are now written as materials in the FBX export. Writing materials can be disabled in moi.ini under [FBX Export] WriteMaterials=n<br />
<br />
Added SubD import option for open boundaries behavior under Options &gt; Import/Export &gt; SubD import options. Can be one of "Open boundaries: Keep corners" or "Open boundaries: Rounded". The default is "Keep corners" as per the discussion on the forum here:<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=9274.1<br><br />
It can be set to "Open boundaries: Rounded" to return to the previous beta's behavior at open boundary areas.<br />
<br />
Update DXF/PDF/AI hidden line layer controls. Add an optional prefix and/or suffix to be added to the style name when generating a 2D hidden line drawing to DXF/PDF/AI formats. Requested on the forum by miquik here:<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=9418.1<br />
<br />
Update view tabs - enable right click to get reverse views. Requested by Juraj in the forum here:<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=9473.10<br />
<br />
Add option in moi.ini for zooming using Shift+MMB:<br><br />
[View]<br><br />
ShiftMMBZoom=y<br />
<br />
Update file dialog filters. Make "All supported files" the first item in the file open filter list on both Windows and Mac (previously it was only on Mac). So that will be the default filter when the file dialog is first opened. This can be reverted to the previous behavior by a setting in moi.ini :<br><br />
[FileDialog]<br><br />
AllSupportedAtBottom=y<br><br />
Requested by agonyii in the discussion forum here:<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=9387.1<br />
<br />
Add moi.ini option for LWO export to not write styles as materials/surfaces in the LWO file.<br><br />
[LWO]<br><br />
WriteMaterialAssignments=y<br />
<br />
Fix bug with meshing dialog settings not being saved. Reported by stefan in the newsgroup here:<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=9266.51<br />
<br />
Fix Options dialog sub dialogs not displaying in full screen mode on macOS Mojave. Simplify dialog window z-ordering on Mac to avoid Mojave bug and hopefully be more resilient against any future Mac child window behavior changes. Reported by Martin in the forum here:<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=9443.1<br />
<br />
Fix improper mouse coordinate scaling on Mac w/Retina. Fix bug with longer distance delay before rotate/pan engages with V4 compared to V3, reported on the forum by Nis here:<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=9266.200<br />
<br />
Fix PDF export crash bug reported on the forum by Mip here:<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=9266.144<br />
<br />
Fix crash with some extended combination keystrokes such as Ctrl+Alt+Win+Numpad1 (QTBUG-36061). Fixes a crash bug reported through e-mail by Mark Tomlinson.<br />
<br />
Fixed a crash in display meshing with a file reported through e-mail by Bodo-Lutz.<br />
<br />
Fix crash in node editor revolve with small angle value, reported by Pilou in the forum here:<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=9476.119<br />
<br />
Updated HarmonyWare libs for STEP, SAT, and IGES file I/O from version 2.1.0 to 2.1.4, various bug fixes.<br />
<br />
Update STEP import/export - face colors. Support per-face colors for STEP file import and export. Fixes STEP import color bug reported on the forum by Fran6 here:<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=9339.4<br />
<br />
Fix 3DM import bug with incorrect circle orientation when reading 3DM files from CAD Exchanger. Fixes mangled import of mould.quadlobe.toy reported on the forum by LarryV here:<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=9266.164<br />
<br />
Update Construct &gt; Curve &gt; Isect "Curve from 2 views". Allow lines to be used as input for curve from 2 views, requested by Przemas in the forum here:<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=9440.1<br />
<br />
Update Trim - "stencil cut" options. Add options to Edit &gt; Trim for deleting the cutting objects and for having a joined together result with "keep all" instead of always separarting into pieces. Requested on the forum by Przemas here:<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=9436.1<br />
<br />
Fixed bug where left-click on style line of properties panel behaved the same as the right click shortcut for editing the style rather than putting up the style picker menu. Reported in the forum by Ralf here:<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=9266.22<br />
<br />
Update selection texture readback on Wine - test for Nvidia driver bug with red/blue bytes swapped and compensate. Also add calls to glFinish() on Wine to try and help avoid some other Nvidia driver bugs on Linux/Wine.<br />
<br />
Update command object model for properties undo. Add moi.command.addSelectedObjectsStateUndoUnit(); that can be called by a command that only modifies properties and doesn't add or delete objects, to get undo support.<br />
<br />
Add script properties to Face objects:<br><br />
face.domainMin : Property that returns u,v coordinate of the lower left of the surface's parameter range.<br><br />
face.domainMax : Property that returns u,v coordinate of the upper right of the surface's parameter range.<br><br />
face.evaluatePoint( uv, u_from_left, v_from_left ) : Function that evaluates a uv parameter value and returns a 3D point.<br><br />
face.evaluateNormal( uv ) : Function that evaluates a uv parameter value and returns a normal vector.<br><br />
face.evaluate1stDerivatives( uv, u_from_left, v_from_left ) : Function that evaluates a uv parameter value and returns first derivatives as a list containing [pt, du, dv, duv].<br><br />
face.evaluate2ndDerivatives( uv, u_from_left, v_from_left ) : Function that evaluates a uv parameter value and returns first and second derivatives as a list containing [pt, du, dv, duv, duu, dvv].<br><br />
face.isPlanar : Property that returns true if the surface is planar.<br><br />
face.planarFrame : Property that returns a coordinate from for a planar surface. Only valid if isPlanar returns true.<br><br />
face.isOnPlane( frame ) : Function that returns true if the surface is planar and is on the given coordinate frame's x/y plane.<br><br />
face.isOnParallelPlane( frame ) : Function that returns true if the surface is planar and is on a plane parallel to the given coordinate frame's x/y plane.<br><br />
<br />
<br />
== Jan-22-2020 ==<br />
<br />
[http://moi3d.com/forum/index.php?webtag=MOI&msg=9660.1 Forum announcement]<br />
<br />
New stuff:<br />
<br />
Added dimension property preset system for controlling initial properties of newly drawn dimensions.<br><br />
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 also create additional presets for project-specific settings.<br><br />
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.<br />
<br />
Implement sizing of the scene browser by dragging on its edge.<br />
<br />
Update dimensions arrowheads - Add option to position arrowheads to the outside, for linear dimension and angular dimension.<br />
<br />
Enable turning on edit points for annotations. This can be used to edit dimensions and also to reposition dimension text.<br><br />
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.<br />
<br />
Add circumference field. Add a circumference field in addition to radius/diameter for circle picking.<br><br />
Affects ArcTangent, Circle, CircleTangent, Cone, Cylinder, and Sphere commands. <br />
<br />
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.<br />
<br />
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.<br />
<br />
Add snap points on angular dimension objects<br />
<br />
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.<br />
<br />
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<br />
<br />
<br />
Fixed bug with dimension text getting distorted when coordinate values were larger than 2500.0<br />
<br />
Fix OBJ sub-d conversion crash when reading materials that had texture maps set up.<br><br />
Fixes a crash reported through e-mail by Phil Nolan.<br />
<br />
Fix sweep bug. History update with editing control points for Sweep was making unexpected results.<br><br />
Fixes bug reported in the forum by nameless here: http://moi3d.com/forum/index.php?webtag=MOI&msg=9526.196<br />
<br />
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.<br />
<br />
Fix bug with circle Tan Tan Radius reported through e-mail by Vladimir.<br />
<br />
Fix annotation window select bug - Leaders without any text were not working with window selection.<br />
<br />
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<br><br />
Fixes a bug reported in the forum by Axel here: http://moi3d.com/forum/index.php?webtag=MOI&msg=9615.1<br />
<br />
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.<br />
<br />
Update edge hit testing - Fix dead zone around outside of object with selection filters active. Fixes bug reported on the forum by Pior here:<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=8435.42<br />
<br />
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.<br />
<br />
Fixed annotation font picking bug that would cause the font size to grow to larger values on Mac just by opening the font dialog.<br />
<br />
Update detailed properties dialog styles. When multiple styles selected, list the styles.<br />
<br />
Fix annotation objects bounding box bug which caused Transform > Align to behave strangely with annotation objects. Reported by OSTexo on the forum here:<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=9526.11<br />
<br />
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:<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=9526.85<br />
<br />
Fix bug with Display: Wireframe mode on Meshing options dialog box not working. Reported on the forum by Schbeurd here:<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=9526.148<br />
<br />
Fix curve offset bug - Curve offset through point wasn't working correctly if closest point was at a tangent discontinuity.<br />
<br />
Show error dialog if trying to load a Rhino v6 or higher .3dm file.<br />
<br />
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:<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=9526.76<br />
<br />
Fixed bug where esc key could prevent hit testing from being reset on curve used for DimRadius. Reported through e-mail by Vladimir<br />
<br />
Update mesh dialog - Don't restore window corner position saved in moi.ini if the corner is not on a visible screen.<br />
<br />
Revert IGES import change - only use simple joins, not any vertex/edge splitting. Fixes regression reported on the forum by Will here:<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=9526.220<br />
<br />
Add moi.ini setting for showing grid in ortho views only, not the 3D view.<br><br />
[Grid]<br><br />
ShowGridInOrthoViewsOnly=y<br><br />
<br />
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 .<br><br />
Requested by Lestatdelc in the forum here:<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=9526.72<br />
<br />
Add moi.ini setting to disable selection edge flashing.<br><br />
[Selection]<br><br />
DisableSelectionEdgeFlash=n<br><br />
If set to =y then the edge flash feedback when selecting faces or breps will be disabled. Requested by Pior in the forum here:<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=8435.36<br />
<br />
Add moi.ini options for disabling preselection highlighting. In moi.ini under:<br><br />
[Selection]<br><br />
DisablePreselectionHighlighting=n<br><br />
DisablePreselectionHighlightingExceptCurves=n<br><br />
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:<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=8435.28<br />
<br />
Add moi.ini option to export FBX names as ascii [FBX Export] ConvertObjectNamesToAscii=y . Requested on the forum by Sven here:<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=9526.115<br />
<br />
<br />
scripting:<br />
<br />
Update view.setCameraAndTarget() function. Take an optional 3rd parameter of an "up" direction vector.<br />
<br />
Add script methods for dropping points:<br><br />
&nbsp;&nbsp;curve.dropPoint( pt ) - returns curve parameter value of closest point on the curve to the given 3D point.<br><br />
&nbsp;&nbsp;curvesegment.dropPoint( pt ) - returns curve parameter value of closest point on the curve segment to the given 3D point.<br><br />
&nbsp;&nbsp;face.dropPoint( pt ); - returns 2D uv coordinate point of closest point on the face to the given 3D point.<br><br />
&nbsp;&nbsp;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.<br><br />
<br />
Updated face.planarFrame() method for analytic planes to use the same x/y axis alignment that point picking snap plane uses.<br />
<br />
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.<br />
<br />
Add getEdgeIsoType script method<br><br />
Takes a parameter of which face to consider, an edge can be shared between 2 faces.<br><br />
var Iso = EdgeCrv.getEdgeIsoType( Face );<br><br />
Return value:<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;-1 : Edge is not an isocurve of the given face.<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;0 : Edge is an isocurve of the given face, going in the U direction.<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;1 : Edge is an isocurve of the given face, going in the V direction.<br />
<br />
<br />
== Sep-10-2020 ==<br />
<br />
[http://moi3d.com/forum/index.php?webtag=MOI&msg=9942.1 Forum announcement]<br />
<br />
Still not quite finished but really close! Exporting dimensions to PDF/AI formats is still in progress and almost there but I needed to release this new beta now because the current beta expires tomorrow. It has been quite a while since the last beta, please let me know if you see any new bugs surface in this release. It won't be much longer before v4 will be wrapped up.<br />
<br />
New stuff:<br />
<br />
Updated DXF - support import/export of dimension entities.<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;Import of TEXT, MTEXT, LEADER, and DIMENSION (linear, angular, radius/diameter sub types) is now supported. MoI will export dimensions to MTEXT, LEADER, and DIMENSION enties.<br />
<br />
Update annotations, add model units scaling behavior.<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;There is a new option for annotation behavior under Details > Annotation properties > "Scaling:" which has options for "Scaling: By screen size" or "Scaling: By model units".<br />
<br />
&nbsp;&nbsp;&nbsp;&nbsp;Scaling: "By screen size" works the same as the earlier v4 betas where text and arrowheads stay the same size on screen independent from the current zoom level.<br />
<br />
&nbsp;&nbsp;&nbsp;&nbsp;Scaling: "By model units" is a new option that makes the text and arrowheads to behave the same as geometry, where it is fixed at a certain unit size (given by the Height: field just after it) and will display larger or smaller when you zoom in and out. This option gives better compatibility with other CAD programs since almost all other programs work this way. When you import dimensions from DXF or from a 3DM file created in Rhino they will default to using this method so that things like title blocks where there are lines or other geometry making a table with text inside it will work as expected.<br />
<br />
Finished the AnnotationText and Leader command dialogs.<br />
<br />
Updated show points for dimension leader. Allow delete of selected edit points for leader objects.<br />
<br />
Handle file write errors - an error dialog will show now on file write failures like if the system ran out of disk space or permission denied.<br />
<br />
3DConnexion updates:<br><br />
&nbsp;&nbsp;&nbsp;&nbsp; - Updated 3dx default speed on Windows. On Windows 3dx translation and rotation speed was too fast, implement same default speed as Mac.<br><br />
&nbsp;&nbsp;&nbsp;&nbsp; - Add "Reverse roll" setting in Options dialog under Options > View > Rotate/Pan/Zoom options > 3DConnexion options. Requested by Fred in the forum here:<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;http://moi3d.com/forum/index.php?webtag=MOI&msg=9660.30<br><br />
&nbsp;&nbsp;&nbsp;&nbsp; - Also added individual settings for reversing twist or tilt in moi.ini, under:<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;[3Dconnexion]<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;&lt;...&gt;<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;ReverseTwist=y<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;ReverseTilt=y<br />
<br />
Update SaveAs to STEP/IGES/SAT formats for hidden objects.<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;By default don't write hidden objects to STEP/IGES/SAT formats when doing a SaveAs, unless turned on in moi.ini under:<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;[NURBS Export]<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;WriteBlankedObjects=y<br><br />
<br />
&nbsp;&nbsp;&nbsp;&nbsp;Also fixed regression in v4 where the blanked flag for hidden objects was not being set on IGES and SAT export.<br />
<br />
Update History<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;Enable face extrudes and the Rebuild command to trigger history updates.<br />
<br />
Curve offset overhaul - Improve curve offset robustness:<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;1 - when extending a line make a new analytic line as the result and use an analytic line/line intersection when possible for more accuracy.<br><br />
<br />
&nbsp;&nbsp;&nbsp;&nbsp;2 - Update how convex corner processing is done to avoid getting little loops which could confuse trim classification and were not getting trimmed out with shallow angle polylines as reported on the forum by Yanik here:<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;http://moi3d.com/forum/index.php?webtag=MOI&msg=9660.47<br />
<br />
&nbsp;&nbsp;&nbsp;&nbsp;3 - Do a better job of selecting intersections and screening out wild results from G2 reflection type extension. Should eliminate crazy looping extensions.<br />
<br />
Update grid axis display colors<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;Add in Z axis color option under Options > Grid. Grid axis lines are now colored according to their 3D orientation, so for example if you set the Z axis color to blue, then the vertical axis line in the front view will be colored blue. Previously the grid axis lines were colored the same in all viewports. You can re-enable that previous way by a setting in moi.ini :<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;[Grid]<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;<...><br><br />
&nbsp;&nbsp;&nbsp;&nbsp;UseOldStyleGridAxisColors=y<br />
<br />
&nbsp;&nbsp;&nbsp;&nbsp;Also added in an option for displaying the z axis grid line in the 3D view, under Options > Grid > "Show grid z axis in 3D view" checkbox.<br />
<br />
Update IGES export<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;Add an option under Options > Import/Export > IGES options > "Write solids as" for writing out solids as either an IGES type 186 "Manifold Solid B-Rep" entity or whether to write them as individual separate surfaces as MoI v3 and earlier always did.<br />
<br />
Update Draw solid > Text command - font styles<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;Add a Style: option to the Draw solid > Text command to make it possible to access styles of the font other than bold/italic. Requested on the forum by Javier here:<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;http://moi3d.com/forum/index.php?webtag=MOI&msg=8766.1<br />
<br />
Update error message when command not found.<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;Pop up a "command not found" dialog instead of a script exception dialog if trying to exec a command that was not found in any command folder.<br />
<br />
Update Help > About dialog<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;Add links for showing license keys and EULA from Help > About dialog. The license key dialog also has an option to clear out license keys.<br />
<br />
Detailed object properties dialog<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;Implement undo for annotation property changes in detailed object properties dialog.<br />
<br />
Update detailed properties panel types report<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;Add reports for all curves, all edges, and all brep edges if there is a mix of different types so there is one label that can be targeted for grabbing all edges or all curves instead of needing to shift+click on both "Open curves" and "Closed curves" for example.<br />
<br />
Add scale factor option for SubD import, in moi.ini<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;[SubD Import]<br />
&nbsp;&nbsp;&nbsp;&nbsp;ScaleFactor=1.0<br />
&nbsp;&nbsp;&nbsp;&nbsp;requested by Tudor in the forum here:<br />
&nbsp;&nbsp;&nbsp;&nbsp;http://moi3d.com/forum/index.php?webtag=MOI&msg=8665.109<br />
<br />
Update annotations bounding size<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;Don't include annotations in the bounding size for the edit frame or the properties panel, unless only annotations are selected.<br />
<br />
&nbsp;&nbsp;&nbsp;&nbsp;There is a moi.ini option to include annotations always in these sizes:<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;[Annotations] IncludeAnnotationsInBoundingBox=y<br><br />
&nbsp;&nbsp;&nbsp;&nbsp; <br />
&nbsp;&nbsp;&nbsp;&nbsp;Discussed in the forum here:<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;http://moi3d.com/forum/index.php?webtag=MOI&msg=9526.30<br />
&nbsp;&nbsp;&nbsp;&nbsp;<br />
Update persistence of "Mesh angle" option.<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;On startup, clamp the value for Options > View > Meshing parameters > Mesh angle to be between 10 and 45 degrees. It can be set lower by a startup script.<br />
<br />
Update annotation text display - substitution fonts<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;Enable use of substitution fonts in annotation text rendering. This will automatically switch to a fallback font if the current font does not have glyphs for unicode text characters being displayed.<br />
<br />
Update sub-d import<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;Use mesh object name in sub-d obj file conversion, and merge styles with the same names and colors. Requested in the forum by pafurijaz here:<br />
&nbsp;&nbsp;&nbsp;&nbsp;http://moi3d.com/forum/index.php?webtag=MOI&msg=9660.142<br />
<br />
Update edit styles dialog.<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;Show gray text on styles with nothing assigned to them same as the scene browser. Requested by pafurijaz in the forum here:<br />
&nbsp;&nbsp;&nbsp;&nbsp;http://moi3d.com/forum/index.php?webtag=MOI&msg=9660.148<br />
<br />
Update object dragging<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;Option for disabling object dragging so clicking on objects will only do selections and not any drags.Set under moi.ini under:<br />
&nbsp;&nbsp;&nbsp;&nbsp;[Selection]<br />
&nbsp;&nbsp;&nbsp;&nbsp;<...>'<br />
&nbsp;&nbsp;&nbsp;&nbsp;DisableObjectDrag=y<br />
<br />
<br />
<br />
Bug fixes:<br />
<br />
Fix window un-maximize bug on Windows - Fixed bug where the restored window position used for un-maximizing a window would keep growing larger on every run.<br />
<br />
Updated selection with filters on - if a selection filter is active, when clicking on an edge or face object to select it do the selection update immediately on the mouse press instead of mouse release. Fixes a bug reported by pior in the forum here:<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=9660.24<br />
<br />
Updated hit testing. Fixed bug where edge boost for selected breps was happening even for objects with selection lock on them. So in the case of boolean difference, the base object was having its edges boosted over top of any standalone curves in the same spot, preventing them from being selected. Fixes a bug reported through e-mail by Vladimir.<br />
<br />
Fixed annotation text bugs with text anchor property. The text anchor property was not persisting properly for all values.<br />
<br />
Fixed a bug with importing a DEGENERATE_TOROIDAL_SURFACE surface type through STEP format.<br />
<br />
Fixed a chamfer/fillet bug with skinny surfaces. If a chamfer surface was skinny (less than 10*tolerance across) it was possible for the chamfer surfaces to get connected improperly since it took just the first one within tolerance instead of the closest one.<br />
<br />
Fixed a bug with keyboard shortcut handling on Mac with a Japanese keyboard. Reported on the forum by nemuneko here:<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=9660.39<br />
<br />
Fixed shortcut key bug where cpaslock key was being interpreted as the letter "A" key.<br><br />
Reported on the forum by nemuneko here: http://moi3d.com/forum/index.php?webtag=MOI&msg=9660.39<br />
<br />
Fixed bugs with dialog size and positioning.<br><br />
Previously when showing a resizable dialog, if there was a saved size from a previous use it would restore that same size. The bug from that was if the dialog size was done on a high resolution monitor and now the use has switched to a different screen the saved dialog size could exceed the current screen resolution. Fixed by limiting saved dialog width and height by current screen size. Also if a saved position for a dialog will be used, check if it is visible on screen before using it. Additionally, don't allow resizable dialogs to shrink to down 0 width or height. Fixes bugs reported through e-mail by James.<br />
<br />
Fixed sweep bug - Freeform sweep framing had a bug when rail segments were anti-tangent. Fixes a bug reported through e-mail by Pilou.<br />
<br />
Updated dimension text rendering - Y positioning for glyphs used incorrect rouning. Was causing noticeable mis-positioned glyphs when using Gill Sans 18 pt font on Mac. Fixes a text display bug reported through e-mail by James.<br />
<br />
Variable radius filleting - linear blend fix. Fixed a bug in variable radius filleting with "linear blend" option where fillet surfaces were not being extended properly. Fixes a bug reported on the forum by Dan R here:<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=9753.1<br />
<br />
Fixed arrowhead bug - outside dimension arrowhead lines not placed correctly on larger scaled objects. Fixes a bug reported through e-mail by James.<br />
<br />
Fixed dimension feet & inches display - for feet&inches, check if the font does not support any Unicode fraction characters being used and if not replace with long form text like 1/2.<br />
<br />
Fixed STEP/IGES import of composite curve entities with G0 discontinuities. Look for G0 discontinuities in imported curves and break those out to separate curves.<br />
<br />
Fix file dialog bug - Fix bug where file open dialog called by script was not returning empty string when canceled. Fixes node editor bug reported in the forum by Wayne here:<br><br />
http://moi3d.com/forum/messages.php?webtag=MOI&msg=7713.880<br />
<br />
Fix Extrude bug with end caps disabled - When making a curve extrude with end caps disabled, a brep with disjoint shells would be created if there were any interior holes in the extrusion.<br />
<br />
Update sweep - true up rail segment ends. If segment end tangents are within 2 degrees of tangent, true them up to be exactly tangent if possible. This can improve corner mitering fails with segments that are nearly G1 but not quite. Fixes bug reported through e-mail by Salvatore.<br />
<br />
Fix curve fillet bugs -<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;Fix curve filleting bug reported by Cemortan_Tudor in the forum here:<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;http://moi3d.com/forum/index.php?webtag=MOI&msg=8665.97<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;and also another curve filleting bug reported a long time ago in the forum by macray here:<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=4958.1<br />
<br />
Fix select last created not working with drag/copy. Reported by Tudor in the forum here:<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=8665.115<br />
<br />
Fix bug in orient line / line<br><br />
Fix bug when line directions pointing opposite each other. Fixes a bug reported in the forum by Karsten here:<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=9476.422<br />
<br />
Fix file dialog crash on Mac Catalina OS<br><br />
Implement fix for QTBUG-83342 for an OS bug that could cause the file dialog to crash on Mac Catalina OS.<br />
<br />
<br />
Scripting updates:<br />
<br />
Added Curve.getIsTangentEdge( AngleToleranceDegrees /* optional, default = 2 degrees */ );<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;- returns true if the 2 surfaces on either side of the edge are tangent to each other.<br />
<br />
Added CurveSegment.getIsG1ToAdjacentSegment( 0 /* 0 for start, 1 for end */ );<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;- returns true if the next segment at the start or end is smooth to the current curve segment.<br />
<br />
moi.filesystem.shellExecute(), added wait for finished parameter.<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;moi.filesystem.shellExecute( path, params, wait ) now takes an optional 3rd boolean parameter for whether to wait until the called process has exited before returning. When used, the return value from shellExecute() is an object containing an .exitCode property for the integer exit code of the called process and an .output string parameter for any text written by the called process to stdout.<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;Example:<br />
&nbsp;&nbsp;&nbsp;&nbsp;var res = moi.filesystem.shellExecute( 'cmd /c dir c:\\', '', true );<br />
&nbsp;&nbsp;&nbsp;&nbsp;if ( res.output ) moi.ui.alert( res.output );<br />
<br />
Updated geometryDatabase::addObject()<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;Ignore the add if the given object is already in the geometry database. Fixes node editor bug reported by Brian here:<br />
&nbsp;&nbsp;&nbsp;&nbsp;http://moi3d.com/forum/index.php?webtag=MOI&msg=7777.1668<br />
<br />
Add face.isNew and curve.isNewEdge properties.<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;These will be set to true if the face or edge was newly generated instead of coming from a copy or split off piece of an original one.<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;example:<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;script: /* Select new edges at intersections after a boolean command */ moi.geometryDatabase.deselectAll();<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;var breps = moi.geometryDatabase.getLastCreated().getBReps(); for ( var i = 0; i < breps.length; ++i )<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;{ var edges = breps.item(i).getEdges(); for ( var j = 0; j < edges.length; ++j ) { var e = edges.item(j);<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;if ( e.isNewEdge ) e.selected = true; } }<br><br />
<br />
Add moi.geometryDatabase.getLastCreated(); - get an object list of the objects that were created by the last run command.<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;Example:<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;script: /* Select fillet surfaces */ moi.geometryDatabase.deselectAll(); var breps = moi.geometryDatabase.getLastCreated().getBReps();<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;for ( var i = 0; i < breps.length; ++i ) { var faces = breps.item(i).getFaces(); for ( var j = 0; j < faces.length; ++j )<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;{ var f = faces.item(j); if ( f.isNew ) f.selected = true; } }<br><br />
<br />
Update MoiList and ObjectList - Add list.clear() and objectlist.clear() methods which will empty out the list so it has length=0.<br />
<br />
Add curve.changeClosedCurveSeam( new_start_parameter, rebuild_circles /*optional, default = true */ );<br />
<br />
Update scripting - window moving and sizing methods.<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;Add window positioning methods:<br />
<br />
&nbsp;&nbsp;&nbsp;&nbsp;win.move( x, y ); - move the window to the given x,y screen coordinates. Can be given either one argument of an object with x,y properties, or 2 numeric arguments.<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;win.resize( width, height ) - resize the client area of a window to the given width and height. Can be given either one argument with x,y or width,height properties, or 2 numeric arguments.<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;win.getPosition() - returns an object with .x and .y properties for the window's screen coordinates.<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;win.getSize() - returns an object with .width and .height properties for the window's client area width and height.<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;win.getFrameSize() - returns an object with .width and .height properties for the window frame's width and height.<br />
<br />
&nbsp;&nbsp;&nbsp;&nbsp;Also added moi.ui.getScreenRect( element ) which will give the screen coordinates of the given element or UIPanel. Returns an object with .left, .top, .right, .bottom, .width, and .height properties.<br />
<br />
&nbsp;&nbsp;&nbsp;&nbsp;Example - increase the Options dialog width by 10 pixels:<br />
<br />
&nbsp;&nbsp;&nbsp;&nbsp;var uipanel = moi.ui.getUIPanel( 'moi://ui/options.htm' );<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;if ( uipanel )<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;{<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;var dlg = uipanel.moiWindow;<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;var pos = dlg.getSize(); pos.width += 10; dlg.resize( pos );<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;}<br />
<br />
&nbsp;&nbsp;&nbsp;&nbsp;Example - position the Options dialog to the right of the side pane:<br />
<br />
&nbsp;&nbsp;&nbsp;&nbsp;var options = moi.ui.getUIPanel( 'moi://ui/options.htm' );<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;if ( options )<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;{<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;var rc = moi.ui.getScreenRect(moi.ui.sidePane);<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;options.moiWindow.move(rc.right,rc.top);<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;}<br />
<br />
Update view tabs customization<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;Call a function UpdateViewTab( TabButton ) in the UI when a view tab has been reversed, so that it is possible to implement custom UI like having images there instead of text. Requested on the forum by Tim Whiteman here:<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=9821.1<br />
<br />
<br />
Update Esc script cancelling<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;Use different method to determine time since last wait for event. The previous method of watching calls to WaitableObject::waitForEvent() is not good because there are other kinds of event loops that do not go through WaitableObject, like modal dialogs or combo box dropdowns. The new method should handle all types of event loops.<br />
<br />
Update offset factory - Enable a new property factory.curveOffsetDistance to return the distance used by offset in through point mode.<br />
<br />
Update pointpicker, add .recalc() method Requested on the forum by Tudor here:<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=8665.221<br />
<br />
<br />
== Oct-27-2020 ==<br />
<br />
[http://moi3d.com/forum/index.php?webtag=MOI&msg=10011.1 Forum announcement]<br />
<br />
This should be the last v4 beta unless any new bugs pop up. The only remaining area for finishing v4 is to update the documentation.<br />
<br />
New stuff:<br />
<br />
Implemented dimension output to PDF/AI formats.<br />
<br />
Loosen cplane projection behavior for dimensions. Projection to the cplane is now a checkbox option inside the dim commands. When turned off you can now do things like pick the first point in the 3D view and then the next point in an ortho view instead of all points being projected to the cplane of the first pick (which can still be enabled by the Project to cplane checkbox option). You can also now create a linear dimension going in the z-axis direction in the 3D view.<br />
<br />
Lightweight conics for PDF/AI export - Use specialized fitter for circles, arcs, ellipses and elliptical arcs to make a lighter weight control point structure. Can be disabled by a setting in moi.ini, add in an entry under [AI/PDF Export] :<br><br />
[AI/PDF Export] UseLightweightConics=n<br />
<br />
Update dimension grid snap. Fix bug where grid snap was snapping to a displaced grid if the initial picked point was not on a grid point. Fixes bug reported in the forum by Larry here:<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=9942.117<br />
<br />
64-bit 3DM file output - switch to Rhino v5 3DM output by default and fixed a bug to allow 3DM files sizes greater than 2GB. Also added a moi.ini option to control the default 3DM version:<br><br />
[3DM] Version= Can be set to Version=4 to make Rhino v4 3DM output which was what MoI v3 used.<br />
<br />
Update FBX default version. Update default FBX file version to 2013/7.3/7300 since Blender does not support 2010/6.1/6100 .<br />
<br />
PDF/AI export - Fix bug with "Preserve units" + "Center on page" option. Fixes a bug reported on the forum by David here:<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=9942.46<br />
<br />
Update DXF spline import - handle DXF output from CorelDRAW with duplicated points. Fixes DXF import problems reported on the forum here:<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=9946.1<br />
<br />
Fixed an infinite loop bug in Qt when showing popup windows in a certain order.<br />
<br />
Update curve control point editing - maintain analytic curves. When doing control point editing on multi segment curves, maintain analytic curve types for segments that are not affected by the current control point selection.<br />
<br />
Updated Esc key handling. If there is a waitable object that has called allowNestedCancel(), don't make Esc cancel the entire command. This should give equivalent behavior for command flow whether clicking on tthe "Cancel" button or using Esc. Fixes a problem reported in the forum by Larry here:<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=9918.1<br />
<br />
Update color picker dialog - fix dialog size shifting when using "Pick Screen Color" button.<br><br />
Fixes a bug reported by Wayne on the forum here:<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=9942.102<br />
<br />
Updated SubD import library with fixes for a couple of remaining crash cases when processing malformed mesh topology.<br />
<br />
Update IGES/STEP output - option for not generating output as an assembly structure. Can be set in moi.ini for IGES or STEP output under:<br><br />
[IGES] ExportFlattenAssemblies=y<br><br />
[STEP] ExportFlattenAssemblies=y<br><br />
Set to =y to generate output without assembly structures same as V3. Should fix problem with exporting to Condacam reported by Joerg in the forum here:<br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=9942.105<br><br />
<br />
Scroll bar bug fix - Update Qt webkit to fix bug when dragging scroll bar and releasing mouse outside window resetting scroll position to top. Fixes a bug reported by Frederick on the forum here:<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=9995.1<br><br />
<br />
Fix edge selection bug after boolean union in areas where planes were merged together. Fixes a bug reported in e-mail by Pilou.<br />
<br />
Update IncrementalSave - Maintain leading 0 padding in current filename, so File_0020.3dm for example will make File_0021.3dm instead of just File_21.3dm as it previously did.<br />
<br />
Add Align option to Draw solid > Text command. Requested by Stefano in the forum here:<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=9942.99<br />
<br />
Add option for showing annotations in a specific color instead of by style color. In moi.ini under the [View] section:<br><br />
AnnotationColorMode=ByStyle<br><br />
AnnotationFixedColor=0,0,0<br><br />
The color mode can be either ByStyle or FixedColor. If set to AnnotationColorMode=FixedColor then they will show using the color from AnnotationFixedColor=R,G,B (each with a value from 0 to 255).<br><br />
Requested by Stefano in the forum here:<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=9950.1<br><br />
<br />
Add Value: property to Details... properties dialog for dimensions for copying value to the clipboard. Requested by Mindset in the forum here:<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=6925.570<br />
<br />
Add option in moi.ini for not limiting Options > View > Meshing parameters > "Mesh angle" value:<br><br />
[View]<br><br />
NoMeshAngleLimit=y<br><br />
<br />
<br />
Scripting:<br />
<br />
Add moi.ui.getLastOrientationPickerFrame() - returns the coordinate frame that was picked with the last OrientationPicker.<br />
<br />
Update startup scripts - call startup scripts after first UI panel layout has been completed so things like the side pane tabs can be manipulated by the script.</div>Michael Gibsonhttp://moi3d.com/wiki/index.php?title=Resources&diff=908Resources2020-10-14T05:31:07Z<p>Michael Gibson: </p>
<hr />
<div><big>Links to useful MoI information on the web</big>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;([[Resources_%28french%29|Version Française ici]])<br />
<br />
[http://moi3d.com MoI home page] <br />
<br />
[http://moi3d.com/forum MoI discussion forum]<br />
<br />
[[FAQ|Frequently Asked Questions]]<br />
<br />
[http://moi3d.com/3.0/docs/moi_help.htm MoI help file online] &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;([http://moi3d.com/3.0/docs/moi_help_French.htm French])&nbsp;&nbsp;([http://moi3d.com/2.0/docs/moi_help_German.htm German])&nbsp;&nbsp;([http://moi3d.com/2.0/docs/moi_help_Spanish.htm Spanish])&nbsp;&nbsp;([http://moi3d.com/1.0/docs/moi_help_Italian.htm Italian])<br />
<br />
[[Shortcut Keys]]<br />
<br />
[[Hidden Secrets]]<br />
<br />
[[Scripting]] <br />
<br />
[http://kyticka.webzdarma.cz/3d/moi/ Petr's MoI page], contains a variety of MoI information including scripts and custom commands. ([http://moiscript.weebly.com/ French version])<br />
<br />
[http://moi.maxsm.net/ Max Smirnov's MoI scripts], numerous advanced scripts from Max. [http://moi.maxsm.net/media/files/ Max's file archive ]([http://moiscript.weebly.com/ French version])<br />
<br />
[http://moi3d.com/forum/index.php?webtag=MOI&msg=7841.6 Burr's script archive - collection of scripts that have been posted on the forum]<br />
<br />
[[V4Beta|V4 Beta release notes]]<br />
<br />
[[Nodeeditor|Node editor plugin]]<br />
<br />
[http://moi3d.com/3.0/EULA_retail.rtf MoI End User License Agreement]<br />
<br />
<br />
Language packs: ([http://moi3d.com/2.0/docs/v2_Spanish_update.zip Spanish v2 update])&nbsp;&nbsp;([http://moi3d.com/1.0/docs/Italian_language_pack.zip Italian UI and help file]) ([http://moi3d.com/2.0/docs/french_command_reference_update.zip French v2 update]) ([http://moi3d.com/2.0/docs/v2_German_update.zip German v2 update])<br />
<br />
<br />
<br />
== Tutorials ==<br />
[http://moi3d.com/3.0/docs/tutorials.htm MoI documentation video tutorials]<br />
<br />
[https://gumroad.com/l/fGqqS MoI for Game Assets video tutorial by Arrimus 3D - 5 hours $9.99 on Gumroad]<br />
<br />
[https://gumroad.com/l/vavRq MoI Basics video tutorial by Bojan Koturanović - 7 hours $25 on Gumroad]<br />
<br />
[http://moiusers.blogspot.com/ Introductory videos by Tom Meeks] - videos with narration covering a lot of basics.<br />
<br />
[https://www.youtube.com/playlist?list=PLu-75I3Zd8NS0AH3O75nOuerVz9O1rTUI Tutorials on YouTube by Liminal4D]<br />
<br />
[http://moi3d.com/forum/index.php?webtag=MOI&msg=9816.1 48 German language video tutorials by Stefan Schneller on jewelry design]<br />
<br />
[http://moi3d.com/download/Moi3d-Overview.pdf Introduction and overview PDF by Fabien Franzen]<br />
<br />
[http://moi3d.com/forum/index.php?webtag=MOI&msg=7389.1 Sub-d car modeling in MoI by Ed Ferguson]<br />
<br />
[http://moi3d.com/forum/index.php?webtag=MOI&msg=9899.1 Custom truck tutorial by Ed Ferguson]<br />
<br />
[http://www.k4icy.com/tutorials.html Mike Maynard's tutorials], and here 18 of them [http://moiscript.weebly.com/ in French by Pilou]<br />
<br />
[http://moi3d.com/forum/index.php?webtag=MOI&msg=6058.1 Videos from Andrei Samardac]<br />
<br />
[http://moi3d.com/forum/index.php?webtag=MOI&msg=3842.1 Video from lyes on modeling a SpacePilot controller]<br />
<br />
[http://vimeo.com/channels/moi3d Vimeo channel with tutorials from lyes]<br />
<br />
[http://bitreality.blogspot.com/ Joe's classical column video tutorials]<br />
<br />
[http://moi3d.com/forum/index.php?webtag=MOI&msg=402.9 Japanese bathtub tutorial]<br />
<br />
[http://moi3d.com/forum/index.php?webtag=MOI&msg=446.17 Object repair tutorial]<br />
<br />
[http://moi3d.com/forum/index.php?webtag=MOI&msg=284.1 Ring tutorial by Jesse Kaufman], and [http://moi3d.com/forum/index.php?webtag=MOI&msg=510.5 #2], [http://moi3d.com/forum/index.php?webtag=MOI&msg=623.1 #3], <br />
[http://moi3d.com/forum/index.php?webtag=MOI&msg=556.1 #4],<br />
[http://moi3d.com/forum/index.php?webtag=MOI&msg=538.6 #5],<br />
[http://moi3d.com/forum/index.php?webtag=MOI&msg=536.1 #6]<br />
<br />
[http://moi3d.com/forum/index.php?webtag=MOI&msg=1175.3 Simple ring using rail revolve], and [http://moi3d.com/forum/index.php?webtag=MOI&msg=1175.5 variant using sweep + scaling rail for more control]<br />
<br />
[http://moi3d.com/forum/index.php?webtag=MOI&msg=1057.1 Product design forums modeling challenges] (not specific to MoI but useful for general CAD modeling strategy).<br />
<br />
[http://moi3d.com/forum/index.php?webtag=MOI&msg=606.4 Simple Intarsia type design]<br />
<br />
[http://moi3d.com/forum/index.php?webtag=MOI&msg=1171.2 Creating a 3-toed base foot]<br />
<br />
[http://moi3d.com/forum/index.php?webtag=MOI&msg=1514.1 Modeling a water can out of one smooth surface]<br />
<br />
[http://moi3d.com/forum/index.php?webtag=MOI&msg=2546.1 Ferrari 599 GTB tutorial videos by lyes]<br />
<br />
[http://moi3d.com/forum/index.php?webtag=MOI&msg=2429.1 Snowman figure by PaQ]<br />
<br />
[http://cid-30cffdfa97399495.skydrive.live.com/self.aspx/.Public/Accurate|_Tapers|_MoI|_V2.zip Accurate tapers using Expressions by Danny] ( Not really needed since Extrude now has a taper function good if you want to learn basic trig) D.T.<br />
<br />
[http://moi3d.com/forum/index.php?webtag=MOI&msg=3814.1 Discussions on ship hull techniques]<br />
<br />
[http://moiscript.weebly.com/ Videos: Functions of the Manual by Pilou (in French)]<br />
<br />
[http://vimeo.com/30765016 Making accurate screw threads video from OSTexo]<br />
<br />
[http://vimeo.com/30168354 Flow workflow video from danperk]<br />
<br />
[http://moi3d.com/forum/index.php?webtag=MOI&msg=8845.16 Car modeling techniques by Zarkow], and [http://moi3d.com/forum/index.php?webtag=MOI&msg=8845.5 #2] and [http://moi3d.com/forum/index.php?webtag=MOI&msg=9956.1 video tutorials]<br />
<br />
== Helper programs ==<br />
Some standalone small programs to help accomplish specific tasks.<br />
<br />
=== Obj23dmWireframe converter ===<br />
[http://moi3d.com/download/Obj23dmWireframe.zip Download Obj23dmWireframe converter]<br />
<br />
This enables bringing polygon data in an .obj file into MoI to use as a construction guide.<br />
Unzip it to some folder, and then you can run the Obj23dmWireframe.exe program. It will prompt you for the name of an .obj file to read, and after that the name of a .3dm file to create. It will read all the polygon data from the obj file and convert the edges of polygons into line segments, and then write those line segments to the 3dm file. You can then load that 3dm file into MoI and use those line segments to snap on to. Originally posted on the forum [http://moi3d.com/forum/index.php?webtag=MOI&msg=1099.1 here].<br />
<br />
=== MergeOBJ utility ===<br />
[http://moi3d.com/download/MergeOBJ.exe Download MergeOBJ utility]<br />
<br />
This utility program can combine several input OBJ files into one single OBJ file. This may be useful if you want to build up a set of different OBJ files possibly by exporting pieces with different mesh settings, and then combine them into one OBJ file if your target program wants to work with only a single file. This was created because the freely available mesh editing tools have a tendency to remove vertex normals when combining files together, this utility will preserve vertex normals. Announced on the forum [http://moi3d.com/forum/index.php?webtag=MOI&msg=3570.12 here].<br />
<br />
=== Old utilities ===<br />
[http://moi3d.com/download/3dmCurves2DXF.zip 3dmCurves2DXF converter] - This could convert curves in a 3DM file to a DXF file to be used for CAM programs. It's not needed anymore since MoI v3 now directly supports DXF file export.<br><br><br />
These utilities were to help with MoI v1 which did not export material assignments to OBJ files. Since MoI v2 can control material assignments by assigning Styles, these are no longer necessary but are still included here for v1 users.<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;[http://moi3d.com/download/SeparateOBJ.zip SeparateOBJ editor] - Breaks an OBJ file exported from MoI v1 into smaller pieces and puts separate material assignments on each piece for import into programs that require that.<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;[http://moi3d.com/download/MergeOBJ_old.zip MergeOBJ editor (old version)] - Edits an OBJ file to combine all the different objects in it into one single object so there will be just one material for the whole thing.</div>Michael Gibsonhttp://moi3d.com/wiki/index.php?title=Resources&diff=907Resources2020-09-18T10:20:15Z<p>Michael Gibson: </p>
<hr />
<div><big>Links to useful MoI information on the web</big>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;([[Resources_%28french%29|Version Française ici]])<br />
<br />
[http://moi3d.com MoI home page] <br />
<br />
[http://moi3d.com/forum MoI discussion forum]<br />
<br />
[[FAQ|Frequently Asked Questions]]<br />
<br />
[http://moi3d.com/3.0/docs/moi_help.htm MoI help file online] &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;([http://moi3d.com/3.0/docs/moi_help_French.htm French])&nbsp;&nbsp;([http://moi3d.com/2.0/docs/moi_help_German.htm German])&nbsp;&nbsp;([http://moi3d.com/2.0/docs/moi_help_Spanish.htm Spanish])&nbsp;&nbsp;([http://moi3d.com/1.0/docs/moi_help_Italian.htm Italian])<br />
<br />
[[Shortcut Keys]]<br />
<br />
[[Hidden Secrets]]<br />
<br />
[[Scripting]] <br />
<br />
[http://kyticka.webzdarma.cz/3d/moi/ Petr's MoI page], contains a variety of MoI information including scripts and custom commands. ([http://moiscript.weebly.com/ French version])<br />
<br />
[http://moi.maxsm.net/ Max Smirnov's MoI scripts], numerous advanced scripts from Max. [http://moi.maxsm.net/media/files/ Max's file archive ]([http://moiscript.weebly.com/ French version])<br />
<br />
[http://moi3d.com/forum/index.php?webtag=MOI&msg=7841.6 Burr's script archive - collection of scripts that have been posted on the forum]<br />
<br />
[[V4Beta|V4 Beta release notes]]<br />
<br />
[[Nodeeditor|Node editor plugin]]<br />
<br />
[http://moi3d.com/3.0/EULA_retail.rtf MoI End User License Agreement]<br />
<br />
<br />
Language packs: ([http://moi3d.com/2.0/docs/v2_Spanish_update.zip Spanish v2 update])&nbsp;&nbsp;([http://moi3d.com/1.0/docs/Italian_language_pack.zip Italian UI and help file]) ([http://moi3d.com/2.0/docs/french_command_reference_update.zip French v2 update]) ([http://moi3d.com/2.0/docs/v2_German_update.zip German v2 update])<br />
<br />
<br />
<br />
== Tutorials ==<br />
[http://moi3d.com/3.0/docs/tutorials.htm MoI documentation video tutorials]<br />
<br />
[https://gumroad.com/l/fGqqS MoI for Game Assets video tutorial by Arrimus 3D - 5 hours $9.99 on Gumroad]<br />
<br />
[https://gumroad.com/l/vavRq MoI Basics video tutorial by Bojan Koturanović - 7 hours $25 on Gumroad]<br />
<br />
[http://moiusers.blogspot.com/ Introductory videos by Tom Meeks] - videos with narration covering a lot of basics.<br />
<br />
[http://moi3d.com/forum/index.php?webtag=MOI&msg=9816.1 48 German language video tutorials by Stefan Schneller on jewelry design]<br />
<br />
[http://moi3d.com/download/Moi3d-Overview.pdf Introduction and overview PDF by Fabien Franzen]<br />
<br />
[http://moi3d.com/forum/index.php?webtag=MOI&msg=7389.1 Sub-d car modeling in MoI by Ed Ferguson]<br />
<br />
[http://moi3d.com/forum/index.php?webtag=MOI&msg=9899.1 Custom truck tutorial by Ed Ferguson]<br />
<br />
[http://www.k4icy.com/tutorials.html Mike Maynard's tutorials], and here 18 of them [http://moiscript.weebly.com/ in French by Pilou]<br />
<br />
[http://moi3d.com/forum/index.php?webtag=MOI&msg=6058.1 Videos from Andrei Samardac]<br />
<br />
[http://moi3d.com/forum/index.php?webtag=MOI&msg=3842.1 Video from lyes on modeling a SpacePilot controller]<br />
<br />
[http://vimeo.com/channels/moi3d Vimeo channel with tutorials from lyes]<br />
<br />
[http://bitreality.blogspot.com/ Joe's classical column video tutorials]<br />
<br />
[http://moi3d.com/forum/index.php?webtag=MOI&msg=402.9 Japanese bathtub tutorial]<br />
<br />
[http://moi3d.com/forum/index.php?webtag=MOI&msg=446.17 Object repair tutorial]<br />
<br />
[http://moi3d.com/forum/index.php?webtag=MOI&msg=284.1 Ring tutorial by Jesse Kaufman], and [http://moi3d.com/forum/index.php?webtag=MOI&msg=510.5 #2], [http://moi3d.com/forum/index.php?webtag=MOI&msg=623.1 #3], <br />
[http://moi3d.com/forum/index.php?webtag=MOI&msg=556.1 #4],<br />
[http://moi3d.com/forum/index.php?webtag=MOI&msg=538.6 #5],<br />
[http://moi3d.com/forum/index.php?webtag=MOI&msg=536.1 #6]<br />
<br />
[http://moi3d.com/forum/index.php?webtag=MOI&msg=1175.3 Simple ring using rail revolve], and [http://moi3d.com/forum/index.php?webtag=MOI&msg=1175.5 variant using sweep + scaling rail for more control]<br />
<br />
[http://moi3d.com/forum/index.php?webtag=MOI&msg=1057.1 Product design forums modeling challenges] (not specific to MoI but useful for general CAD modeling strategy).<br />
<br />
[http://moi3d.com/forum/index.php?webtag=MOI&msg=606.4 Simple Intarsia type design]<br />
<br />
[http://moi3d.com/forum/index.php?webtag=MOI&msg=1171.2 Creating a 3-toed base foot]<br />
<br />
[http://moi3d.com/forum/index.php?webtag=MOI&msg=1514.1 Modeling a water can out of one smooth surface]<br />
<br />
[http://moi3d.com/forum/index.php?webtag=MOI&msg=2546.1 Ferrari 599 GTB tutorial videos by lyes]<br />
<br />
[http://moi3d.com/forum/index.php?webtag=MOI&msg=2429.1 Snowman figure by PaQ]<br />
<br />
[http://cid-30cffdfa97399495.skydrive.live.com/self.aspx/.Public/Accurate|_Tapers|_MoI|_V2.zip Accurate tapers using Expressions by Danny] ( Not really needed since Extrude now has a taper function good if you want to learn basic trig) D.T.<br />
<br />
[http://moi3d.com/forum/index.php?webtag=MOI&msg=3814.1 Discussions on ship hull techniques]<br />
<br />
[http://moiscript.weebly.com/ Videos: Functions of the Manual by Pilou (in French)]<br />
<br />
[http://vimeo.com/30765016 Making accurate screw threads video from OSTexo]<br />
<br />
[http://vimeo.com/30168354 Flow workflow video from danperk]<br />
<br />
[http://moi3d.com/forum/index.php?webtag=MOI&msg=8845.16 Car modeling techniques by Zarkow], and [http://moi3d.com/forum/index.php?webtag=MOI&msg=8845.5 #2] and [http://moi3d.com/forum/index.php?webtag=MOI&msg=9956.1 video tutorials]<br />
<br />
== Helper programs ==<br />
Some standalone small programs to help accomplish specific tasks.<br />
<br />
=== Obj23dmWireframe converter ===<br />
[http://moi3d.com/download/Obj23dmWireframe.zip Download Obj23dmWireframe converter]<br />
<br />
This enables bringing polygon data in an .obj file into MoI to use as a construction guide.<br />
Unzip it to some folder, and then you can run the Obj23dmWireframe.exe program. It will prompt you for the name of an .obj file to read, and after that the name of a .3dm file to create. It will read all the polygon data from the obj file and convert the edges of polygons into line segments, and then write those line segments to the 3dm file. You can then load that 3dm file into MoI and use those line segments to snap on to. Originally posted on the forum [http://moi3d.com/forum/index.php?webtag=MOI&msg=1099.1 here].<br />
<br />
=== MergeOBJ utility ===<br />
[http://moi3d.com/download/MergeOBJ.exe Download MergeOBJ utility]<br />
<br />
This utility program can combine several input OBJ files into one single OBJ file. This may be useful if you want to build up a set of different OBJ files possibly by exporting pieces with different mesh settings, and then combine them into one OBJ file if your target program wants to work with only a single file. This was created because the freely available mesh editing tools have a tendency to remove vertex normals when combining files together, this utility will preserve vertex normals. Announced on the forum [http://moi3d.com/forum/index.php?webtag=MOI&msg=3570.12 here].<br />
<br />
=== Old utilities ===<br />
[http://moi3d.com/download/3dmCurves2DXF.zip 3dmCurves2DXF converter] - This could convert curves in a 3DM file to a DXF file to be used for CAM programs. It's not needed anymore since MoI v3 now directly supports DXF file export.<br><br><br />
These utilities were to help with MoI v1 which did not export material assignments to OBJ files. Since MoI v2 can control material assignments by assigning Styles, these are no longer necessary but are still included here for v1 users.<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;[http://moi3d.com/download/SeparateOBJ.zip SeparateOBJ editor] - Breaks an OBJ file exported from MoI v1 into smaller pieces and puts separate material assignments on each piece for import into programs that require that.<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;[http://moi3d.com/download/MergeOBJ_old.zip MergeOBJ editor (old version)] - Edits an OBJ file to combine all the different objects in it into one single object so there will be just one material for the whole thing.</div>Michael Gibsonhttp://moi3d.com/wiki/index.php?title=V4Beta&diff=906V4Beta2020-09-13T06:10:10Z<p>Michael Gibson: </p>
<hr />
<div><big>Release notes for each V4 beta release are gathered here.</big><br />
<br />
== Nov-12-2017 ==<br />
<br />
[http://moi3d.com/forum/index.php?webtag=MOI&msg=8675.1 Forum announcement]<br />
<br />
V4 is a major rewrite with changes on many levels so please be on the lookout for any bugs.<br />
<br />
The main new functionality is that MoI is now a 64-bit program for both Windows and Mac and the Mac version is a native build and doesn't use Wineskin anymore.<br />
<br />
New system requirements are Windows 7/8/10 64-bit or macOS 10.8 - 10.13 .<br />
<br />
Polygon conversion can now use all your system memory instead of running into 32-bit memory limits.<br />
<br />
A lot of various little quirky things should be tuned up for the Mac version.<br />
<br />
The only known areas still not quite working yet are snap text labels and dotted/dashed line styles in viewports and Mac trackpad gestures aren't fully functional yet.<br />
<br />
<br />
== Nov-18-2017 ==<br />
<br />
[http://moi3d.com/forum/index.php?webtag=MOI&msg=8682.1 Forum announcement]<br />
<br />
Bug fixes:<br />
<br />
Fix for the frozen UI bug when restoring a maximized main window from a minimized or hidden state. Please let me know if you see it again.<br />
<br />
Fix Mac deployment issue that was preventing things from working on OS X 10.8 and 10.9, MoI should run ok there now.<br />
<br />
Fix font name bug where MoI V4 would overwrite the UI font name property that V3 uses in moi.ini and so the V3 UI font changed after you ran V4. They should now stay separate.<br />
<br />
Fix bug where dropdown controls in commands wouldn't reinitialize to their last used value. Reported by bemfarmer in the forum here:<br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=8675.204<br />
<br />
Fix construction line snapping bug reported in the forum by Moujiik here:<br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=8675.119<br />
<br />
Not a whole lot of changes, normally I would have waited until a bit more were batched up but the frozen UI bug was pretty significant so I wanted to try and nail that one down soon.<br />
<br />
<br />
== Nov-27-2017 ==<br />
<br />
[http://moi3d.com/forum/index.php?webtag=MOI&msg=8704.1 Forum announcement]<br />
<br />
Bug fixes:<br />
<br />
Saving to IGES and STEP files - fixed a bug where using .stp or .igs file extensions wasn't working on Mac.<br />
<br />
Mac full screen mode - fix for the problem where the view controls window would show on the desktop space, sending you back to the desktop the first time you moved the mouse over a viewport after going to full screen. Please let me know if you see it again.<br />
<br />
Updated shortcut key editor - Make the "Key" column expand to whatever width is necessary to show the longest key combo. Fixes problem reported in the forum by Metin here:<br />
http://moi3d.com/forum/messages.php?webtag=MOI&msg=8682.42<br />
<br />
Viewport toolbar - fixed a bug where doing view manipulation using the bottom viewport toolbar could miss the mouse up event and get stuck.<br />
<br />
Orientation picker - fixed a sporadic drawing bug with the orientation picker reported on the forum by Max here:<br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=8682.16<br />
<br />
Shortcut keys with Shift - Fixed a bug in shortcut keys using shift + number keys. V4 was generating Shift+1 as Shift+! which was incompatible with V3, V3 would convert it back to Shift+1 which was then not recognized by V4. V4 should now generate Shift+1 for that key combination and not Shift+! anymore. Fixes a bug reported on the forum by Marco here:<br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=8682.50<br />
<br />
Background images - Fixed a crash when making a background image from a bitmap file with lower than 32-bit color depth. Reported on the forum by Vladimir here:<br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=8682.100<br />
<br />
Undo - Fixed a bug where undo wouldn't find the proper object to restore in some cases. Reported on the forum by Val here:<br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=8682.83<br />
<br />
<br />
Scripting:<br />
<br />
moi.geometryDatabase.findStyle() - fixed a bug in the findStyle() function for the "create if not found" case, reported on the forum by Max here:<br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=8682.16<br />
<br />
obj.getBoundingBox() - The boolean parameter for getting high accuracy bounds was marked as required in v4, while in v3 it was optional with a default of false. Updated v4 to match v3.<br />
<br />
moi.filesystem.openFileStream - switch to use QTextStream for reading to get better unicode support. Unicode files with byte order marks should be supported now, the default will be UTF-8 if no byte order mark is found. Also added new methods .setWriteBOM( boolean ) which you can call to make writing a text file write the byte order mark at the front (default is no BOM), and .setCodec( name ) to have specific control over what encoding to use for reading or writing. Supported codecs are listed here: http://doc.qt.io/qt-5/qtextcodec.html#details .<br />
<br />
moi://appdata/ - add support for moi://appdata/ URLs so you can load HTML resources like images from the MoI app data directory. moi://appdata/ will resolve to %AppData%\Moi on Windows and to ~/Library/Application Support/Moi on Mac.<br />
<br />
String to integer conversion - Updated so a string value of "1.0" will be successfully converted to an integer value of 1 rather than rejecting it. Fixes a change in behavior from v3 to v4 that broke some of Brian's scripts.<br />
<br />
factory.setValue() - switched to v3 behavior so sending the wrong object type doesn't trigger an exception. Fixes the SpurGearProfile script.<br />
<br />
<br />
== Dec-11-2017 ==<br />
<br />
[http://moi3d.com/forum/index.php?webtag=MOI&msg=8731.1 Forum announcement]<br />
<br />
Bug fixes and changes:<br />
<br />
Mac full screen mode - getting sent back to the desktop the first time you moved the mouse over each viewport after going to full screen mode should be finally fixed! Also Ctrl+Cmd+F shortcut key for full screen toggle should now work.<br />
<br />
Mac trackpad and Magic Mouse - Finished implementing multitouch view navigation for the trackpad and Magic Mouse on Mac. Magic Mouse should be back to zooming instead of panning. The Zoom speed can be adjusted in moi.ini [MultiTouch] MagicMouseZoomSpeed=1.0 . Change this to something like 2.0 to make the default behavior faster or 0.5 to go slower. You can also hold down the Ctrl key to go slower as well.<br />
<br />
Mac ignored mouse bug - Fix for bug where mousemove events would stop working in certain conditions when restoring the main window from hidden or showing a modal dialog. Fixes bug reported by Finema here: http://moi3d.com/forum/index.php?webtag=MOI&msg=8675.189<br />
<br />
Updated "On" object snap mechanics - Changed the way On object snap for curves works to get better accuracy with curves far from the origin.<br />
<br />
Incorrect default values for some commands - Fixed a bug where the default values for the Text and Rebuild commands were incorrect on locales that use commas for the decimal separator. Reported by Vladimir on the forum here: http://moi3d.com/forum/index.php?webtag=MOI&msg=8704.32<br />
<br />
Trim - fixed a bug in the Edit &gt; Trim command where if an object was set to be both an object to be trimmed as well as a cutting object it could get hidden unexpectedly.<br />
<br />
Command button highlighting - Fix for command buttons remaining highlighted after command ends. Reported by Vladimir on the forum here: http://moi3d.com/forum/index.php?webtag=MOI&msg=8704.32<br />
<br />
Read-only file handling - Fix bug where using File &gt; Save wasn't prompting for a new file name when the current opened file was set to read-only. Reported in the forum by mhasse here: http://moi3d.com/forum/index.php?webtag=MOI&msg=8714.1<br />
<br />
Crash fix for newer CPU/Older OS combination - Fix for 0xc000001d illegal instruction exception when running on Win7 SP0 with a newer AVX-capable CPU.<br />
<br />
Hidden-line generation - Increase Canvas megapixel size limit from 175 to 1000.<br />
<br />
Degenerate box error - fixed bug where a script error would be displayed if you made a degenerate rectangle in any of the Draw solid &gt; Box commands.<br />
<br />
Update text input fields - Text input fields were only applying typed in values when the input panel was open, or when the Enter or Tab keys were pressed, not if just clicking outside the field as they now will. Should fix a PDF export dialog bug reported by reported by Moujiik here: http://moi3d.com/forum/index.php?webtag=MOI&msg=8704.15<br />
<br />
<br />
Scripting:<br />
<br />
viewport.setCameraAndTarget() - Fixed bug in viewport.setCameraAndTarget() function, reported in the forum by Ralf here: http://moi3d.com/forum/index.php?webtag=MOI&msg=8704.25<br />
<br />
Process memory use limit - Added option in moi.ini for limiting maximum memory use - Windows only. Can be set in moi.ini under [Settings] MaxProcessMemoryUse=x . Requested by Burr on the forum here: http://moi3d.com/forum/index.php?webtag=MOI&msg=8704.26<br />
<br />
moi.view.screenshot - Fix bug where the moi.view.screenshot() method was capturing the wrong area of the screen on Mac.<br />
<br />
<br />
Enable setting default values for controls from shortcut keys. UI controls can now be triggered or initialized with custom values if the control's id is supplied in the command-line parameters for the command. For buttons, the presence of the button's id value in command line parameters will trigger a UI event for the button the first time that it is shown, this will have the same effect as clicking the button.<br />
For dropdowns and checkboxes, the presence of the control's id in an id=value pair will use that value to initialize the control rather than taking the last used or default value as normal.<br />
<br />
This makes it possible to set up shortcut keys that package up different options within commands, for example:<br />
<br />
Trim addtrimpoints removekeepmode=keep<br />
<br />
Trim addtrimpoints removekeepmode=remove<br />
<br />
Trim isocurve isodir=u<br />
<br />
Trim isocurve isodir=v<br />
<br />
Line bothsides=true<br />
<br />
Extrude tapered<br />
<br />
<br />
<br />
== Feb-9-2018 ==<br />
<br />
[http://moi3d.com/forum/index.php?webtag=MOI&msg=8814.1 Forum announcement]<br />
<br />
Text labels inside viewports still not implemented yet, that's the last remaining thing still left to get v4 fully caught up.<br />
<br />
<br />
Bug fixes and changes:<br />
<br />
<br />
Dashed/Dotted line styles implemented so things like the grid, construction lines, and hidden line display should be looking proper now.<br />
<br />
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.<br />
<br />
DXF import layers - Support reading layers in the DXF file as Styles in MoI.<br />
<br />
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<br />
<br />
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.<br />
<br />
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.<br />
<br />
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.<br />
<br />
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<br />
<br />
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.<br />
<br />
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.<br />
<br />
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.<br />
<br />
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<br />
<br />
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<br />
<br />
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.<br />
<br />
Windows shutdown bug - Fix bug when shutting down Windows while MoI is still open reported by Vladimir in the forum here:<br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=8731.81<br />
<br />
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<br />
<br />
Fix crash on program shutdown if license key dialog was canceled.<br />
<br />
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<br />
<br />
<br />
<br />
Scripting:<br />
<br />
Added additional script interface for Curve and CurveSegment objects.<br />
<br />
For both Curves and CurveSegments:<br />
<br />
crv.domainMin - Property that returns lower bound of the curve's parametric domain.<br />
<br />
crv.domainMax - Property that returns upper bound of the curve's parametric domain.<br />
<br />
crv.evaluatePoint( t ) - Function returning a point for the given parameter value.<br />
<br />
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.<br />
<br />
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.<br />
<br />
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...<br />
<br />
crv.isPlanar - Property that returns true if the curve's control polygon is planar.<br />
<br />
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.<br />
<br />
crv.isOnPlane( frame ) - Function that returns true if the curve is on the given frame's x/y plane.<br />
<br />
crv.isOnParallelPlane( frame ) - Function that returns true if the curve is on a plane parallel to the given frame's x/y plane.<br />
<br />
crv.isClosed - Property that returns true if the curve is closed.<br />
<br />
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).<br />
<br />
crv.isDegenerate - Property that returns true if the curve has a degenerate control polygon with all the points stacked in the same spot.<br />
<br />
crv.isLine - Property that returns true if the curve has the shape of a line.<br />
<br />
crv.isSimpleLine - Property that returns true if the curve is a simple line segment made up of only 2 control points.<br />
<br />
crv.isCircle - Property that returns true if the curve is a circle.<br />
<br />
crv.isArc - Property that returns true if the curve is a circular arc.<br />
<br />
crv.isEllipse - Property that returns true if the curve is an ellipse (either a full ellipse or an elliptical arc).<br />
<br />
crv.conicFrame - Property that returns the coordinate frame of a circle, arc, or ellipse. Only valid if isCircle, isArc, or isEllipse returns true.<br />
<br />
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.<br />
<br />
crv.conicRadiusY - Property that returns the y-axis radius of an ellipse. Only valid if isEllipse returns true.<br />
<br />
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.<br />
<br />
<br />
The following only apply to Curves, not CurveSegments:<br />
<br />
crv.isClickSelected - Property that returns true if the curve was selected by a mouse click action.<br />
<br />
crv.clickSelectionPoint - Property that returns the point on the curve where it was click selected. Only valid if isClickSelected returns true.<br />
<br />
crv.clickSelectionParam - Property that returns the parameter value of the curve where it was click selected. Only valid if isClickSelected returns true.<br />
<br />
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.<br />
<br />
<br />
Added moi.ui.systemDPI property.<br />
<br />
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.<br />
<br />
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.<br />
<br />
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.<br />
<br />
Add a container with id="CommandBarCustomUI" in CommandBar.htm to make it easier to populate the UI from a startup script.<br />
Example:<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;var container = moi.ui.commandBar.CommandBarCustomUI;<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;container.insertAdjacentHTML( 'beforeEnd', '<moi:CommandButton>Test1</moi:CommandButton>' );<br />
<br />
Appdata/scripts directory - you can add a scripts folder inside appdata and MoI will also check there for running an "instant script".<br />
<br />
<br />
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.<br><br />
The trackpadgesture event object has these properties:<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;event.gestureType : string value of 'Scroll', 'SmartZoom', 'Zoom', or 'Rotate'.<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;event.deltaX, event.deltaY : movement for Scroll , 2 fingers swiping.<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;event.numTouches : number of touch points being used for Scroll.<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;event.scaleFactor : scale factor for pinch/zoom<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;event.angle : angle change for Rotate.<br><br />
<br />
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();<br />
<br />
<br />
== May-12-2018 ==<br />
<br />
[http://moi3d.com/forum/index.php?webtag=MOI&msg=8936.1 Forum announcement]<br />
<br />
I think this version is all caught up now, the last remaining things that were missing from v3 such as text labels inside viewports are now implemented and all regression bugs that have been reported should now be fixed. So if that holds up this should be a major milestone for v4 where I'll now be switching to working on new features rather than rewriting stuff from v3.<br />
<br />
Bug fixes and changes:<br />
<br />
<br />
Implemented text rendering inside viewports for things like snapping tag labels ("End", "Mid", etc...)<br />
<br />
OBJ export - Fixed bug where invalid OBJ file would be generated if object names had extended characters in them. Reported through e-mail by Lewis.<br />
<br />
STEP import - Fixed crash bug in STEP import reported through e-mail by John Lewis.<br />
<br />
iMac Pro draw speed - Fixed bug where too frequent UI updates caused a noticeable draw speed slowdown compared to V3 on some high dpi Mac machines. Fixes bug reported by Metin.<br />
<br />
Mouse cursors - Fixed various bugs where the mouse cursor wasn't updating properly, reported by Vladimir in the forum here:<br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=8814.128<br />
<br />
Text field right click context menu - Fixed a bug with right click on text input fields in menus being offset.<br />
<br />
Menu hover state - Fixed a bug where when launching a menu, the button hover state on the launching UI would get stuck until another click.<br />
<br />
Color picker custom colors - Custom colors set in the color picker dialog are now saved to and restored from moi.ini so they will persist between program sessions.<br />
Fixes bug reported by Moujiik on the forum here: http://moi3d.com/forum/index.php?webtag=MOI&msg=8855.5<br />
<br />
Object properties - Fixed bug where cached objects in the async worker process wouldn't get updated if style, name, or selection changed.<br />
Fixes bug reported on the newsgroup by Brian here: http://moi3d.com/forum/index.php?webtag=MOI&msg=8814.81<br />
<br />
Selection filter crash - Fix for crash when setting a style selection filter, reported by Shane on the forum here: http://moi3d.com/forum/index.php?webtag=MOI&msg=8872.1<br />
<br />
Busy script interruption - Scripts that do a lot of calculation in loops can now be interrupted by pushing the Escape key.<br />
Requested on the forum by Marco here: http://moi3d.com/forum/index.php?webtag=MOI&msg=8814.63<br />
<br />
Trackpad scroll gesture - Fix bug where Mac trackpad scroll gesture could be treated as a mouse wheel event,<br />
if the first touch happened on a different window.<br />
Fixes bug reported by Max in the forum here: http://moi3d.com/forum/index.php?webtag=MOI&msg=8814.21<br />
<br />
DXF export arcs and circles - Previously arcs and circles that had a normal vector pointing straight down in the negative z axis direction would get flipped in the export, because there are a couple of programs that do not read those correctly. But this direction flip is bad for CNC usage, so the default now is to not flip them. It is possible to return to the previous flipping behavior by a setting in moi.ini: [DXF Export] FlipNegativeZAxisCirclesAndArcs=y<br />
Fixes a bug reported in the forum by Vladimir here: http://moi3d.com/forum/index.php?webtag=MOI&msg=6925.419<br />
<br />
VSync - Added option in moi.ini to limit screen redraw with vsync, might help if you are experiencing a tearing type effect in the display.<br />
Can be set under [View] VSync=y . Requested by torsten in the forum here: http://moi3d.com/forum/index.php?webtag=MOI&msg=8814.140<br />
<br />
Additional command dirs - Add moi.ini setting under [Commands] AdditionalCommandsDirs= which can be set to a semi-colon delimited list of additional directories to look for commands, in addition to the built in commands and appdata commands.<br><br />
[Commands]<br><br />
AdditionalCommandsDirs=c:\path1;c:\path2<br><br />
Requested on the forum by Hamish here: http://moi3d.com/forum/messages.php?webtag=MOI&msg=8814.97<br />
<br />
FBX export vertex colors - Add option in moi.ini for writing vertex colors to FBX exports. Can be enabled by setting:<br><br />
[FBX Export]<br><br />
WriteVertexColors=y<br><br />
Requested by Stefan in the forum here: http://moi3d.com/forum/index.php?webtag=MOI&msg=8853.5<br />
<br />
Graphics API override - Add moi.ini option for which graphics API to use. <br />
On Windows or Linux/Wine a specific render engine can be controlled by a setting in moi.ini, under the [View] section, GraphicsAPI key:<br><br />
[View]<br><br />
GraphicsAPI=Direct3D11<br><br />
or<br><br />
GraphicsAPI=OpenGL<br />
<br />
Startup working directory - Add moi.ini options for setting the initial working directory on startup.<br><br />
[Settings]<br><br />
StartupWorkingDirectory=<br><br />
SaveWorkingDirectoryAtExit=n<br><br />
Requested by Marc in the forum here: http://moi3d.com/forum/index.php?webtag=MOI&msg=8814.88<br />
<br />
Trackpad as mouse wheel - Add setting in moi.ini for making Mac trackpad scroll used as a mouse wheel zoom as older MoI versions did.<br><br />
[MultiTouch]<br><br />
UseTrackpadScrollAsMouseWheel=y<br><br />
Requested by Marc in the forum here: http://moi3d.com/forum/index.php?webtag=MOI&msg=8814.88<br />
<br />
<br />
<br />
== Jun-6-2018 ==<br />
<br />
[http://moi3d.com/forum/index.php?webtag=MOI&msg=8966.1 Forum announcement]<br />
<br />
New stuff:<br />
<br />
Major overhaul of STEP/IGES/SAT importing.<br />
<br />
These imports will now no longer block the main thread so it won't look like MoI is frozen while it is loading a big file.<br />
<br />
The loading happens in 2 phases, first an initial scan of the file that doesn't do too much work except logging the structure of where objects are located. Then the next heavier phase of processing the objects will make use of multiple CPU cores for a major speed increase. So there should be a very substantial performance increase in loading large STEP, IGES, or SAT files in this version.<br />
<br />
Also the HarmonyWare libraries used for working with these formats have now been updated from version 1.7.11 to the latest 2.0.8 release and there are a lot of bug fixes from that. A notable one is that some incorrect positioning of instances should be good now. Also some other fixes on MoI's side should make for colors coming through from STEP files that were previously missed.<br />
<br />
It would be cool to hear how the new multi-core enabled importer performs on some big files compared to MoI v3!<br />
<br />
Also please let me know if you see any new problems with any particular imports. If you do please try to send the file to me at moi@moi3d.com so I can test with it over here, I will keep any files confidential.<br />
<br />
<br />
Other things:<br />
<br />
Window selection Mac - Fix for sluggish selection window dragging reported by James through e-mail.<br />
<br />
Properties panel size display - Adjusted the quick size calculation for the properties panel to hopefully increase accuracy a little.<br />
<br />
Properties panel - Report closed edges as a distinct object type. Fixes an issue of inconsistent behavior between curves and edges reported through e-mail by Scott.<br />
<br />
Edit frame grip size - Added option in moi.ini for setting edit frame grip handle pixel size, so it can be adjusted for higher res displays,<br />
Requested by Barry in the forum here: http://moi3d.com/forum/index.php?webtag=MOI&msg=8960.1<br><br />
[View]<br><br />
EditFrameGripPixelSize=24<br />
<br />
DisableOnSrfInOrtho setting - Added scripting access to DisableOnSrfInOrtho setting so it can be toggled at runtime under moi.drawingAids.disableOnSrfInOrtho . Requested on the forum by immortalx here: http://moi3d.com/forum/index.php?webtag=MOI&msg=8947.1<br />
<br />
NURBS Export RotateZUpToYUp option - Added option in moi.ini for option for exporting STEP/IGES/SAT formats to rotate the export to a Y up coordinate system.<br><br />
[NURBS Export]<br><br />
RotateZUpToYUp=y<br />
<br />
Update viewport right click - Don't push Cancel buttons with a viewport right click, it's too easy to accidentally cancel a long file import or things like that.<br />
<br />
<br />
<br />
== Aug-28-2018 ==<br />
<br />
[http://moi3d.com/forum/index.php?webtag=MOI&msg=9044.1 Forum announcement]<br />
<br />
The main focus for this beta is performance enhancements.<br />
<br />
3DM files will now use multiple CPU cores for loading so large files should load significantly faster and show a progress bar.<br />
<br />
Also the display engine has been enhanced to take advantage of modern GPUs - display data is now cached in the GPU's VRAM which should result in faster redraw speed for large files.<br />
<br />
<br />
Other bug fixes and changes:<br />
<br />
Mac version multiple windows - Add "Window" menu to Mac version top menu. Shows all open files and allows switching between them easier. Also support Cmd+Tilde (Cmd+~) and Cmd+Shift+Tilde for switching to next/prev window.<br />
<br />
Construction line bug fix - Fix construction line creation bug reported by jopo in the forum here:<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=8966.53<br />
<br />
Object drag bug fix - fix bug for moving the mouse over another viewport when dragging objects. Reported by Burr on the forum here:<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=9016.1<br />
<br />
Mac AMD performance - fix problem with default buffer location with OpenGL on some AMD cards that was causing slow redraws on some machines like iMac pro.<br />
<br />
Updated Mac file open behavior. To match the Mac document based application framework behavior, if a file is opened by drag/drop or by double-clicking on the desktop icon do not open a new window for it if there is an existing window with it already open.<br />
<br />
3DS Max zoom compatibility - Added moi.ini option for Alt+Ctrl+MMB zoom for 3DS Max compatibility. Can be set under:<br><br />
[View]<br><br />
AltCtrlMMBZoom=y<br><br />
<br />
Object snap labels on left side - Add moi.ini option to make object snap labels shown to the left of the target point, can be useful if you're drawing directly on a screen such as with a Cintiq screen. Can be set in moi.ini under:<br><br />
[Drawing Aids]<br><br />
ShowObjectSnapLabelToLeft=n<br><br />
<br />
Shortcut keys update - On Windows if there is a [Shortcut Keys Mac] section of the moi.ini file, read and write shortcuts from there so you can copy the moi.ini file over from Mac to Windows. Fixes issue reported on the forum by Matt here:<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=8970.1<br />
<br />
STEP import bug fix - Fixed import bug for file MF2018.STEP getting stuck at 36%, reported on the forum by Marco here:<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=8966.9<br><br />
Also fixed a different STEP import bug reported by Eric Bucy through e-mail.<br />
<br />
Fixed file loader UI bug - Fix bug where main window would not maximize properly when trying to show progress bar UI before main window was initially displayed, such as when MoI launched by double clicking a STP file. Fixes bug reported in the forum by OSTexo here:<br><br />
OSTexo http://moi3d.com/forum/index.php?webtag=MOI&msg=8966.40<br />
<br />
File notes - Add notes property that is saved to and loaded from .3dm files. Can be accessed by setting up a shortcut key with:<br><br />
script: moi.ui.createDialog( 'moi://ui/NotesDialog.htm', 'resizeable' );<br />
<br />
Viewport right click option - Add option for v3 behavior of right clicking in a viewport working as a shortcut for pushing the Cancel button when a command only has Cancel and not Done. Can be set in moi.ini under:<br><br />
[View]<br />
DoRightClickCancel=y<br />
<br />
Add new appdata directory option - MoI will now look for an appdata directory that has been created alongside "commands", "ui", etc... and if found will use that location as the appdata folder, to make it possible to store everything within a single directory.<br />
<br />
Add moi.ini setting for selection hit test radius<br><br />
[View]<br><br />
SelectionHitTestRadius=12<br><br />
<br />
Scene browser scripting - Added script access to scene browser items so it is possible to make a startup script that expands sections on program startup. To do that put the following in a .js file in your Moi appdata startup folder:<br><br />
var items = moi.ui.sceneBrowser.rootItems;<br><br />
for ( var i = 0; i &lt; items.length; ++i )<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;items[i].expanded = true;<br />
<br />
<br />
== Oct-17-2018 ==<br />
<br />
[http://moi3d.com/forum/index.php?webtag=MOI&msg=9100.1 Forum announcement]<br />
<br />
The main focus for this beta is a polygon sub-d surface to NURBS conversion method, available on the side pane under SubD > Create > From file. This allows you to open an .obj file that contains a sub-d polygon cage and have it converted to a high quality NURBS object in MoI.<br />
<br />
Some other stuff:<br />
<br />
Settings for page size are now available in PDF/AI exports.<br />
<br />
Fixed crash bug when modifying display mesh angle.<br />
<br />
Updated STEP export to fix problem with object names not coming through to SolidWorks, Fusion360 and KeyShot.<br />
<br />
Added moi.ini option to set current file name with foreign file types. In moi.ini under [Settings] SetNameWhenOpeningAllFileTypes=y When set, the current file name is set for all file opens not just .3dm files. Requested by Alex on the forum here: http://moi3d.com/forum/index.php?webtag=MOI&msg=9044.41<br />
<br />
Updated DXF export to allow the dialog to be suppressed and options set by script. Parameters that can be set are:<br><br />
// DXF export function parameter options:<br><br />
//<br><br />
// NoUI=true<br><br />
// ExportType=2d | 3d<br><br />
// ProjectionView=top | 3d | front | right<br><br />
// WriteCurvesAs=splines | cubicsplines | polylines<br><br />
// PolylineAngleDegrees=10.0<br><br />
// UseSimpleEntities=true<br><br />
// NumDecimalPlaces=12<br><br />
//<br><br />
// GenerateHiddenLines=false<br><br />
// HiddenLineLayerMode=fromstyle | custom<br><br />
// HiddenLineLayerName=Hidden lines (layer name to use when layer mode = custom)<br><br />
// IgnoreTangentEdges=false<br><br />
// Resolution=25.0<br><br />
<br />
<br />
== Feb-27-2019 ==<br />
<br />
[http://moi3d.com/forum/messages.php?webtag=MOI&msg=9266.1 Forum announcement]<br />
<br />
New stuff:<br />
<br />
Numerous fixes for SubD import crashes and translation issues.<br />
<br />
Fix for SubD imports on objects of small scale.<br />
<br />
Fix for SubD imports with meshes that have multiple volumes that partially overlap each other. Previously these could sometimes not get separated into different solids properly.<br />
<br />
Update SubD import to read materials from the .obj file and make Styles from them in MoI. Also patch combining will pay attention to material assignments<br />
so patches will not get combined across different materials. Can be disabled under Options > Import/Export > SubD import options > "Use materials" checkbox.<br />
<br />
Add SubD import option for either fewer patches but with denser surface control points, or more patches around extraordinary vertices but with fewer surface<br />
control points in regular areas of the mesh. Set under Options > Import/Export > SubD import options > "Patch type".<br />
<br />
Update multiple selection - Add option for doing multiple selection only when shift key is down. Options > General > Multiple selection: "Always" or "Only when Shift is down".<br />
<br />
Fix cylinder boolean union bug. There was a bug with combining cylinders in boolean union when the cylinders had opposite axis directions. This was the cause of some occasional mysterious missing fillets where the fillet surface was ending up displaced some distance away from the trim boundaries.<br />
<br />
Fix a sporadic crash in Chamfer reported through e-mail by Sebastian Bielecki.<br />
<br />
Fix crash in center object snap after copy/pasting an arc edge curve.<br />
<br />
Update tesselator - fix degenerate span display bug. Fixes bug in mesher for making display meshes on surfaces with nearly degenerate spans. Fixes a bug reported through PM by BarryH.<br />
<br />
Add option for scaling STL export to target unit system. Under Options > Import/Export > STL Options > "Export units conversion".<br />
<br />
Update curve filleting - Enable "Constant distance" fillet mode for curves, currently only works for line segments.<br />
<br />
Fix 3DConnexion buttons bug where undo/redo on space mouse button presses was not working, reported by Ivan in the forum here: http://moi3d.com/forum/index.php?webtag=MOI&msg=9130.1<br />
<br />
Update command parameter parsing. Allow quotes to control parameter parsing so values with spaces can be used, for example: ArrayDir mode="Extent, Count" . Fixes a problem reported on the forum by Bravlin here: http://moi3d.com/forum/index.php?webtag=MOI&msg=6087.75<br />
<br />
Update shortcut keys parameters - start and end scripts. Make it possible for shortcut keys to define parameters for oncommandstart="" and oncommandend="" for script to run at the start or end of the command. For example this shortcut will run a script when the line command ends to select it: line oncommandend="moi.geometryDatabase.selectLastCreated();"<br />
<br />
Update shortcut keys for file commands. Enable controlling the file dialog file type with keyboard shortcuts by adding a filetype= option in the shortcut key. For example a shortcut key with: Open filetype=igs will make the file dialog have the .igs file type active. Can be used with Open, SaveAs, Import, and Export commands. Requested in the forum by Peticel here: http://moi3d.com/forum/index.php?webtag=MOI&msg=9118.1<br />
<br />
Update command UI automation - ordering. Some UI events cause the command to finish, so to be able to control a command the ordering of the events needs to be controllable.<br />
Rework the UI event triggering so they are triggered in the order given in the command line parameters. This makes the following possible:<br><br />
extrude tapered draftangle=20 distanceinput=10<br><br />
Previously that didn't work because the distanceinput is earlier in the UI and so got triggered earlier and ended the command before tapered or draftangle could be processed.<br />
<br />
Fix properties panel line length editing bug reported through e-mail by Tim Hickox.<br />
<br />
Fix tolerance bug that could cause small sized objects to get mangled boundaries when joined, regression from v3.<br />
<br />
Fix IGES import joining regression - Make iges entity 128 surfaces join together if joining is enabled, regression from v3.<br />
<br />
Updated IGES import joining - allow T junctures to join instead of only simple matching endpoints only.<br />
<br />
Fix IGES import bug for some cases with edges on seams of closed surfaces. Fixes an IGES file sent through e-mail by Charles Ludeke.<br />
<br />
Fix excessive load time with STEP file that had a degenerate surface in it.<br />
<br />
Update license key file paths - Allow a path to moi_v3_license.key to be passed as a command line parameter or set as an environment variable<br />
like moi_v3_license.key=path . Requested by Mariusz in the forum here: http://moi3d.com/forum/index.php?webtag=MOI&msg=9106.1<br />
<br />
If straight snap snap angle is set to 0, disable x/y plane straight snap line snapping.<br />
<br />
Add warning if running on Mac case sensitive file system.<br />
<br />
Update file dialogs - Save and restore last used file dialog location on all platforms.<br />
<br />
Update file loader progress bar - Add full path as tooltip to file name label.<br />
<br />
Add option for limiting the number of CPU cores used by file loading. Can be set under: [Settings] FileLoaderThreadLimit=x<br />
<br />
Update scripting - exe command line args<br><br />
moi.getExecutableCommandLineArgs() - returns list of command line parameters for launching the executable.<br><br />
moi.geometryDatabase.initialFileToLoad - filename for initial file to load by executable command line parameter.<br />
<br />
Scripting - Add moi.command.currentCommandName property for getting the current running command name by script, or empty string if no command currently running. Requested by Bravlin on the forum here: http://moi3d.com/forum/index.php?webtag=MOI&msg=7238.61<br />
<br />
Update Scene Browser, Types > Edges and Types > Faces behavior. Don't show edges or faces of hidden breps unless shift is down. Makes it easier to turn edges on/off without hidden breps being shown. Requested through e-mail by Tim Hickox<br />
<br />
Update scene browser - Make sure scene browser is initialized before any startup script that wants to access it is run.<br />
<br />
Scene browser script access - Add more script access to SceneBrowser: sceneBrowser.objects, sceneBrowser.types, and sceneBrowser.styles to get the root item for those sections.<br><br />
Added methods to a scene browser item:<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;item.find('name') - will search all children and return an item with that name or null if none present.<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;item.alterStatus(mode,rightclick) - alter the status area of an item, that's the one with the eye icon. Mode can be one of 'show','hide','lock','unlock'. Optional boolean parameter for rightclick will make it behave like a right mouse button click.<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;item.select(mode,rightclick) - alter the selection dot of an item. Mode can be one of 'toggle','select','deselect','filteron','filteroff'. Optional boolean parameter for rightclick will make it behave like a right mouse button click.<br><br />
Here's an example that toggles the selection dot for the Blue item under styles: moi.ui.scenebrowser.styles.find('Blue').select('toggle');<br />
<br />
Fix selection redraw bug on static objects where objects could get stuck looking like they were selected in the Intersect, Project, Silhouette, Join, and Separate commands. Reported through e-mail by James Elliott.<br />
<br />
Fix bug in Add pt with rational curves, reported in the forum by Bravlin here: http://moi3d.com/forum/index.php?webtag=MOI&msg=9216.34<br />
<br />
Fix for wrong selection display on iMac with NVIDIA GeForce GT 750M 1024 MB - work around driver bug.<br />
<br />
Fix for mouse move events getting stacked up on some Mac machines.<br />
<br />
Fix .skp and .fbx format export with unicode file names on Mac. Exporting to .skp or .fbx formats with certain kinds certain kinds of extended characters in the filename would fail.<br />
<br />
Update filename display Mac - Fix bug where filenames with <> characters were being treated as html tags.<br />
<br />
Fix MRU file list Mac - Fixed bug where on Mac if a file had a \ in it, it would not persist to the MRU list properly.<br />
<br />
Fix Mac crash when exporting to .3ds format.<br />
<br />
Fix QtWebKit Ctrl/Meta flippage on Mac. Make the HTML event object use Ctrl for Ctrl and Cmd for Cmd instead of flipped on Mac.<br />
<br />
Turn off viewport display time that was previously always on.<br />
<br />
Update mouse wheel for node editor - dispatch wheel events to canvas elements.<br />
<br />
Fix bug in <moi:Select> control when the <moi:Select> element had keyboard focus when the command UI document was torn down. Fixes bug reported by Bravlin on the forum here: http://moi3d.com/forum/index.php?webtag=MOI&msg=952.31<br />
<br />
Add setting for allowing snap plane change in ortho:<br><br />
[Drawing Aids]<br><br />
AllowSnapPlaneChangeInOrtho=y<br><br />
When set the orientation picker will align to surfaces in ortho views, by default it only aligns to surfaces in the 3D view.<br />
<br />
Update viewport text - fallback fonts. Switch to a fallback font if the regular UI font does not contain glyphs that we are going to be using in the viewport. This enables stuff like Japanese text to render properly in the viewport even if the UI font has not been set to a font with Japanese glyphs in it.<br />
<br />
Update Wine hit testing BGRA textures. Add option to use BGRA for the texture format for off-screen rendering. Make it used by default when running under Wine. Hopefully will solve selection problems where hit test map had unexpected byte ordering on the propietary Nvidia driver, as reported by Ronnie Ashlock.<br />
<br />
Add option to use same color picker dialog as v3 on Windows. Can be set under<br><br />
[Color Dialog]<br><br />
UseV3ColorDialog=y<br><br />
Requested by Barry-H in the forum here: http://moi3d.com/forum/index.php?webtag=MOI&msg=9100.241<br />
<br />
Update scripting moi.view.resetAll() - Update moi.view.resetAll() to take an optional parameter. Can be one of:<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;'auto' - Do automatic toggle between selected or all.<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;'selected' - Only reset to selected objects.<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;'all' - Only reset to all objects.<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;'default' - Reset to default startup views, keeping reversed views (bottom/back/left).<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;'harddefault' - Reset to startup views and get rid of reversed views (bottom view will become top).<br><br />
Requested on the forum by arial here: http://moi3d.com/forum/index.php?webtag=MOI&msg=8123.39<br />
<br />
Update edit style shortcut. Make Ctrl+Left click on the style line in the properties panel also work as a style edit shortcut in addition to right-click. Requested by shane in the forum here: http://moi3d.com/forum/index.php?webtag=MOI&msg=9245.5<br />
<br />
Add moi.ini option for window select behavior.<br><br />
[Selection]<br><br />
WindowSelectMode_Combo_Intersect_Contained=Combo<br><br />
Can be one of "Combo", "Intersect", or "Contained".<br />
<br />
Update mesh export - allow generating empty mesh files when saving to OBJ, STL, 3DS, LWO, FBX, or SKP mesh formats. Requested by Mikael Sundell for pipeline integration.<br />
<br />
<br />
== Oct-10-2019 ==<br />
<br />
[http://moi3d.com/forum/index.php?webtag=MOI&msg=9526.1 Forum announcement]<br />
<br />
The primary focus for this release is a new detailed object properties dialog and new annotation/dimension tools on the "Dim" tab in the side pane.<br />
<br />
The new extended properties dialog is triggered by the "Details..." button in the Properties Panel here:<br />
<br />
http://moi3d.com/forum/get_attachment.php?webtag=MOI&hash=f48bc5937a8f8647858ee122f26fd746&filename=detailed_object_properties1.png<br />
<br />
The Type: section of the detailed object properties dialog will give some additional information about the object type:<br />
<br />
http://moi3d.com/forum/get_attachment.php?webtag=MOI&hash=f523480b2b9504254b2208f7bdadf912&filename=detailed_object_properties2.png<br />
<br />
For curves it will report if it is an open curve or closed curve, whether it has the shape of a line, polyline, circle, arc, ellipse, elliptical arc, whether it is planar and the number of segments in the curve.<br />
<br />
For surface/solid objects it will report if it is a solid, open joined surface, or open individual surface, if it is a planar surface, the number of joined edges, number of naked edges, and number of faces.<br />
<br />
For edges it will report open, closed, joined, naked, line, circle, ellipse, elliptical arc, and planar.<br />
<br />
For a face selected it will report if it is a planar face.<br />
<br />
For an annotation selected it will report if it is a linear dimension, radial dimension, angular dimension, leader, or annotation text.<br />
<br />
When multiple objects are selected it will make a combined report like this:<br />
<br />
http://moi3d.com/forum/get_attachment.php?webtag=MOI&hash=a41d725c0dbdec497aebe4b79123c060&filename=detailed_object_properties3.png<br />
<br />
The type labels can be clicked on to filter the selection down to just the objects that match that label:<br />
<br />
http://moi3d.com/forum/get_attachment.php?webtag=MOI&hash=2dfca899ad8b98dc077ef0274ccf96d7&filename=detailed_object_properties4.png<br />
<br />
You can also hold down the shift key which will allow you to click multiple labels and the filtering will be triggered when you release the shift key. Holding down the Ctrl key while clicking on a label will remove its objects from the selection.<br />
<br />
Lower down on the dialog there are sections for Curve properties, Solid or surface properties, and Annotation properties if any of those types of objects are selected:<br />
<br />
http://moi3d.com/forum/get_attachment.php?webtag=MOI&hash=a2c2884805bea74d3f1008fa82fa241f&filename=detailed_object_properties5.png<br />
<br />
There you can calculate the length of curves, the surface area or volume of a surface or solid, and adjust properties for annotation objects.<br />
<br />
When you click the "Calc" button to calculate a value the button will be replaced with a numeric value and a small "Copy" icon will appear next to it. You can click on the value to copy it to the system clipboard.<br />
<br />
<br />
The other major new feature area are annotation objects which can be used to add dimensions and text to your model to use for documentation.<br />
<br />
These are added by 7 new commands in the Dim tab on the side pane here:<br />
<br />
http://moi3d.com/forum/get_attachment.php?webtag=MOI&hash=3ac8aa861ce0381ee8a301bb1f7eda82&filename=dim_tab.png<br />
<br />
The DimHorizontal command creates a linear dimension going in the x-axis direction of the construction plane:<br><br />
http://moi3d.com/forum/get_attachment.php?webtag=MOI&hash=adade4b11952793ad9e912e04ac1ee9d&filename=DimHorizontal.png<br />
<br />
The DimVertical command creates a linear dimension going in the y-axis direction of the construction plane:<br><br />
http://moi3d.com/forum/get_attachment.php?webtag=MOI&hash=c594a4d2c93cbc4b594fcc9482ab43ca&filename=DimVertical.png<br />
<br />
The DimAligned command creates a linear dimension going in any direction on the construction plane:<br><br />
http://moi3d.com/forum/get_attachment.php?webtag=MOI&hash=794f907b2a85dfc93ea5462f919680fa&filename=DimAligned.png<br />
<br />
All 3 of the linear dimension commands have a "From object" button in their command options which you can trigger to take the start and end point of a curve as the first 2 points of the dimension.<br />
<br />
The DimRadius command creates a radial dimension on a circle or arc curve:<br><br />
http://moi3d.com/forum/get_attachment.php?webtag=MOI&hash=3fe29174d3a44247c189f098635089bf&filename=DimRadius.png<br />
<br />
The DimAngle command creates an angular dimension on the construction plane. There is a "From lines" button in its command options which will allow you to select 2 line objects instead of picking points.<br><br />
http://moi3d.com/forum/get_attachment.php?webtag=MOI&hash=899daa66d11473a80215ced67ec3707f&filename=DimAngle.png<br />
<br />
The Leader command creates a leader object which is a text label with an arrow.<br><br />
http://moi3d.com/forum/get_attachment.php?webtag=MOI&hash=3e412e15007311c6f216db34d71e1907&filename=Leader.jpg<br />
<br />
The AnnotationText command creates an annotation text object which is a text box by itself, no arrows.<br />
<br />
Annotations are currently only saved to and from .3dm files. Saving them to DXF and PDF/AI files will be upcoming.<br />
<br />
There is an option in moi.ini for changing the display appearance of arrowheads in annotations by disabling mitered arrowhead tips:<br><br />
[Annotations]<br><br />
MiterArrowheads=y<br />
<br />
<br />
Other bug fixes and updates:<br />
<br />
Update FBX export - FBX version, object names, and materials. Add option for which FBX version to use under Options dialog &gt; Import/Export &gt; FBX options &gt; FBX version. Object names are now written to the FBX files instead of only generic "object1", "object2", ... names and styles are now written as materials in the FBX export. Writing materials can be disabled in moi.ini under [FBX Export] WriteMaterials=n<br />
<br />
Added SubD import option for open boundaries behavior under Options &gt; Import/Export &gt; SubD import options. Can be one of "Open boundaries: Keep corners" or "Open boundaries: Rounded". The default is "Keep corners" as per the discussion on the forum here:<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=9274.1<br><br />
It can be set to "Open boundaries: Rounded" to return to the previous beta's behavior at open boundary areas.<br />
<br />
Update DXF/PDF/AI hidden line layer controls. Add an optional prefix and/or suffix to be added to the style name when generating a 2D hidden line drawing to DXF/PDF/AI formats. Requested on the forum by miquik here:<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=9418.1<br />
<br />
Update view tabs - enable right click to get reverse views. Requested by Juraj in the forum here:<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=9473.10<br />
<br />
Add option in moi.ini for zooming using Shift+MMB:<br><br />
[View]<br><br />
ShiftMMBZoom=y<br />
<br />
Update file dialog filters. Make "All supported files" the first item in the file open filter list on both Windows and Mac (previously it was only on Mac). So that will be the default filter when the file dialog is first opened. This can be reverted to the previous behavior by a setting in moi.ini :<br><br />
[FileDialog]<br><br />
AllSupportedAtBottom=y<br><br />
Requested by agonyii in the discussion forum here:<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=9387.1<br />
<br />
Add moi.ini option for LWO export to not write styles as materials/surfaces in the LWO file.<br><br />
[LWO]<br><br />
WriteMaterialAssignments=y<br />
<br />
Fix bug with meshing dialog settings not being saved. Reported by stefan in the newsgroup here:<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=9266.51<br />
<br />
Fix Options dialog sub dialogs not displaying in full screen mode on macOS Mojave. Simplify dialog window z-ordering on Mac to avoid Mojave bug and hopefully be more resilient against any future Mac child window behavior changes. Reported by Martin in the forum here:<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=9443.1<br />
<br />
Fix improper mouse coordinate scaling on Mac w/Retina. Fix bug with longer distance delay before rotate/pan engages with V4 compared to V3, reported on the forum by Nis here:<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=9266.200<br />
<br />
Fix PDF export crash bug reported on the forum by Mip here:<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=9266.144<br />
<br />
Fix crash with some extended combination keystrokes such as Ctrl+Alt+Win+Numpad1 (QTBUG-36061). Fixes a crash bug reported through e-mail by Mark Tomlinson.<br />
<br />
Fixed a crash in display meshing with a file reported through e-mail by Bodo-Lutz.<br />
<br />
Fix crash in node editor revolve with small angle value, reported by Pilou in the forum here:<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=9476.119<br />
<br />
Updated HarmonyWare libs for STEP, SAT, and IGES file I/O from version 2.1.0 to 2.1.4, various bug fixes.<br />
<br />
Update STEP import/export - face colors. Support per-face colors for STEP file import and export. Fixes STEP import color bug reported on the forum by Fran6 here:<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=9339.4<br />
<br />
Fix 3DM import bug with incorrect circle orientation when reading 3DM files from CAD Exchanger. Fixes mangled import of mould.quadlobe.toy reported on the forum by LarryV here:<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=9266.164<br />
<br />
Update Construct &gt; Curve &gt; Isect "Curve from 2 views". Allow lines to be used as input for curve from 2 views, requested by Przemas in the forum here:<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=9440.1<br />
<br />
Update Trim - "stencil cut" options. Add options to Edit &gt; Trim for deleting the cutting objects and for having a joined together result with "keep all" instead of always separarting into pieces. Requested on the forum by Przemas here:<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=9436.1<br />
<br />
Fixed bug where left-click on style line of properties panel behaved the same as the right click shortcut for editing the style rather than putting up the style picker menu. Reported in the forum by Ralf here:<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=9266.22<br />
<br />
Update selection texture readback on Wine - test for Nvidia driver bug with red/blue bytes swapped and compensate. Also add calls to glFinish() on Wine to try and help avoid some other Nvidia driver bugs on Linux/Wine.<br />
<br />
Update command object model for properties undo. Add moi.command.addSelectedObjectsStateUndoUnit(); that can be called by a command that only modifies properties and doesn't add or delete objects, to get undo support.<br />
<br />
Add script properties to Face objects:<br><br />
face.domainMin : Property that returns u,v coordinate of the lower left of the surface's parameter range.<br><br />
face.domainMax : Property that returns u,v coordinate of the upper right of the surface's parameter range.<br><br />
face.evaluatePoint( uv, u_from_left, v_from_left ) : Function that evaluates a uv parameter value and returns a 3D point.<br><br />
face.evaluateNormal( uv ) : Function that evaluates a uv parameter value and returns a normal vector.<br><br />
face.evaluate1stDerivatives( uv, u_from_left, v_from_left ) : Function that evaluates a uv parameter value and returns first derivatives as a list containing [pt, du, dv, duv].<br><br />
face.evaluate2ndDerivatives( uv, u_from_left, v_from_left ) : Function that evaluates a uv parameter value and returns first and second derivatives as a list containing [pt, du, dv, duv, duu, dvv].<br><br />
face.isPlanar : Property that returns true if the surface is planar.<br><br />
face.planarFrame : Property that returns a coordinate from for a planar surface. Only valid if isPlanar returns true.<br><br />
face.isOnPlane( frame ) : Function that returns true if the surface is planar and is on the given coordinate frame's x/y plane.<br><br />
face.isOnParallelPlane( frame ) : Function that returns true if the surface is planar and is on a plane parallel to the given coordinate frame's x/y plane.<br><br />
<br />
<br />
== Jan-22-2020 ==<br />
<br />
[http://moi3d.com/forum/index.php?webtag=MOI&msg=9660.1 Forum announcement]<br />
<br />
New stuff:<br />
<br />
Added dimension property preset system for controlling initial properties of newly drawn dimensions.<br><br />
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 also create additional presets for project-specific settings.<br><br />
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.<br />
<br />
Implement sizing of the scene browser by dragging on its edge.<br />
<br />
Update dimensions arrowheads - Add option to position arrowheads to the outside, for linear dimension and angular dimension.<br />
<br />
Enable turning on edit points for annotations. This can be used to edit dimensions and also to reposition dimension text.<br><br />
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.<br />
<br />
Add circumference field. Add a circumference field in addition to radius/diameter for circle picking.<br><br />
Affects ArcTangent, Circle, CircleTangent, Cone, Cylinder, and Sphere commands. <br />
<br />
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.<br />
<br />
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.<br />
<br />
Add snap points on angular dimension objects<br />
<br />
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.<br />
<br />
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<br />
<br />
<br />
Fixed bug with dimension text getting distorted when coordinate values were larger than 2500.0<br />
<br />
Fix OBJ sub-d conversion crash when reading materials that had texture maps set up.<br><br />
Fixes a crash reported through e-mail by Phil Nolan.<br />
<br />
Fix sweep bug. History update with editing control points for Sweep was making unexpected results.<br><br />
Fixes bug reported in the forum by nameless here: http://moi3d.com/forum/index.php?webtag=MOI&msg=9526.196<br />
<br />
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.<br />
<br />
Fix bug with circle Tan Tan Radius reported through e-mail by Vladimir.<br />
<br />
Fix annotation window select bug - Leaders without any text were not working with window selection.<br />
<br />
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<br><br />
Fixes a bug reported in the forum by Axel here: http://moi3d.com/forum/index.php?webtag=MOI&msg=9615.1<br />
<br />
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.<br />
<br />
Update edge hit testing - Fix dead zone around outside of object with selection filters active. Fixes bug reported on the forum by Pior here:<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=8435.42<br />
<br />
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.<br />
<br />
Fixed annotation font picking bug that would cause the font size to grow to larger values on Mac just by opening the font dialog.<br />
<br />
Update detailed properties dialog styles. When multiple styles selected, list the styles.<br />
<br />
Fix annotation objects bounding box bug which caused Transform > Align to behave strangely with annotation objects. Reported by OSTexo on the forum here:<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=9526.11<br />
<br />
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:<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=9526.85<br />
<br />
Fix bug with Display: Wireframe mode on Meshing options dialog box not working. Reported on the forum by Schbeurd here:<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=9526.148<br />
<br />
Fix curve offset bug - Curve offset through point wasn't working correctly if closest point was at a tangent discontinuity.<br />
<br />
Show error dialog if trying to load a Rhino v6 or higher .3dm file.<br />
<br />
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:<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=9526.76<br />
<br />
Fixed bug where esc key could prevent hit testing from being reset on curve used for DimRadius. Reported through e-mail by Vladimir<br />
<br />
Update mesh dialog - Don't restore window corner position saved in moi.ini if the corner is not on a visible screen.<br />
<br />
Revert IGES import change - only use simple joins, not any vertex/edge splitting. Fixes regression reported on the forum by Will here:<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=9526.220<br />
<br />
Add moi.ini setting for showing grid in ortho views only, not the 3D view.<br><br />
[Grid]<br><br />
ShowGridInOrthoViewsOnly=y<br><br />
<br />
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 .<br><br />
Requested by Lestatdelc in the forum here:<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=9526.72<br />
<br />
Add moi.ini setting to disable selection edge flashing.<br><br />
[Selection]<br><br />
DisableSelectionEdgeFlash=n<br><br />
If set to =y then the edge flash feedback when selecting faces or breps will be disabled. Requested by Pior in the forum here:<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=8435.36<br />
<br />
Add moi.ini options for disabling preselection highlighting. In moi.ini under:<br><br />
[Selection]<br><br />
DisablePreselectionHighlighting=n<br><br />
DisablePreselectionHighlightingExceptCurves=n<br><br />
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:<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=8435.28<br />
<br />
Add moi.ini option to export FBX names as ascii [FBX Export] ConvertObjectNamesToAscii=y . Requested on the forum by Sven here:<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=9526.115<br />
<br />
<br />
scripting:<br />
<br />
Update view.setCameraAndTarget() function. Take an optional 3rd parameter of an "up" direction vector.<br />
<br />
Add script methods for dropping points:<br><br />
&nbsp;&nbsp;curve.dropPoint( pt ) - returns curve parameter value of closest point on the curve to the given 3D point.<br><br />
&nbsp;&nbsp;curvesegment.dropPoint( pt ) - returns curve parameter value of closest point on the curve segment to the given 3D point.<br><br />
&nbsp;&nbsp;face.dropPoint( pt ); - returns 2D uv coordinate point of closest point on the face to the given 3D point.<br><br />
&nbsp;&nbsp;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.<br><br />
<br />
Updated face.planarFrame() method for analytic planes to use the same x/y axis alignment that point picking snap plane uses.<br />
<br />
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.<br />
<br />
Add getEdgeIsoType script method<br><br />
Takes a parameter of which face to consider, an edge can be shared between 2 faces.<br><br />
var Iso = EdgeCrv.getEdgeIsoType( Face );<br><br />
Return value:<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;-1 : Edge is not an isocurve of the given face.<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;0 : Edge is an isocurve of the given face, going in the U direction.<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;1 : Edge is an isocurve of the given face, going in the V direction.<br />
<br />
<br />
== Sep-10-2020 ==<br />
<br />
[http://moi3d.com/forum/index.php?webtag=MOI&msg=9942.1 Forum announcement]<br />
<br />
Still not quite finished but really close! Exporting dimensions to PDF/AI formats is still in progress and almost there but I needed to release this new beta now because the current beta expires tomorrow. It has been quite a while since the last beta, please let me know if you see any new bugs surface in this release. It won't be much longer before v4 will be wrapped up.<br />
<br />
New stuff:<br />
<br />
Updated DXF - support import/export of dimension entities.<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;Import of TEXT, MTEXT, LEADER, and DIMENSION (linear, angular, radius/diameter sub types) is now supported. MoI will export dimensions to MTEXT, LEADER, and DIMENSION enties.<br />
<br />
Update annotations, add model units scaling behavior.<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;There is a new option for annotation behavior under Details > Annotation properties > "Scaling:" which has options for "Scaling: By screen size" or "Scaling: By model units".<br />
<br />
&nbsp;&nbsp;&nbsp;&nbsp;Scaling: "By screen size" works the same as the earlier v4 betas where text and arrowheads stay the same size on screen independent from the current zoom level.<br />
<br />
&nbsp;&nbsp;&nbsp;&nbsp;Scaling: "By model units" is a new option that makes the text and arrowheads to behave the same as geometry, where it is fixed at a certain unit size (given by the Height: field just after it) and will display larger or smaller when you zoom in and out. This option gives better compatibility with other CAD programs since almost all other programs work this way. When you import dimensions from DXF or from a 3DM file created in Rhino they will default to using this method so that things like title blocks where there are lines or other geometry making a table with text inside it will work as expected.<br />
<br />
Finished the AnnotationText and Leader command dialogs.<br />
<br />
Updated show points for dimension leader. Allow delete of selected edit points for leader objects.<br />
<br />
Handle file write errors - an error dialog will show now on file write failures like if the system ran out of disk space or permission denied.<br />
<br />
3DConnexion updates:<br><br />
&nbsp;&nbsp;&nbsp;&nbsp; - Updated 3dx default speed on Windows. On Windows 3dx translation and rotation speed was too fast, implement same default speed as Mac.<br><br />
&nbsp;&nbsp;&nbsp;&nbsp; - Add "Reverse roll" setting in Options dialog under Options > View > Rotate/Pan/Zoom options > 3DConnexion options. Requested by Fred in the forum here:<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;http://moi3d.com/forum/index.php?webtag=MOI&msg=9660.30<br><br />
&nbsp;&nbsp;&nbsp;&nbsp; - Also added individual settings for reversing twist or tilt in moi.ini, under:<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;[3Dconnexion]<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;&lt;...&gt;<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;ReverseTwist=y<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;ReverseTilt=y<br />
<br />
Update SaveAs to STEP/IGES/SAT formats for hidden objects.<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;By default don't write hidden objects to STEP/IGES/SAT formats when doing a SaveAs, unless turned on in moi.ini under:<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;[NURBS Export]<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;WriteBlankedObjects=y<br><br />
<br />
&nbsp;&nbsp;&nbsp;&nbsp;Also fixed regression in v4 where the blanked flag for hidden objects was not being set on IGES and SAT export.<br />
<br />
Update History<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;Enable face extrudes and the Rebuild command to trigger history updates.<br />
<br />
Curve offset overhaul - Improve curve offset robustness:<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;1 - when extending a line make a new analytic line as the result and use an analytic line/line intersection when possible for more accuracy.<br><br />
<br />
&nbsp;&nbsp;&nbsp;&nbsp;2 - Update how convex corner processing is done to avoid getting little loops which could confuse trim classification and were not getting trimmed out with shallow angle polylines as reported on the forum by Yanik here:<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;http://moi3d.com/forum/index.php?webtag=MOI&msg=9660.47<br />
<br />
&nbsp;&nbsp;&nbsp;&nbsp;3 - Do a better job of selecting intersections and screening out wild results from G2 reflection type extension. Should eliminate crazy looping extensions.<br />
<br />
Update grid axis display colors<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;Add in Z axis color option under Options > Grid. Grid axis lines are now colored according to their 3D orientation, so for example if you set the Z axis color to blue, then the vertical axis line in the front view will be colored blue. Previously the grid axis lines were colored the same in all viewports. You can re-enable that previous way by a setting in moi.ini :<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;[Grid]<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;<...><br><br />
&nbsp;&nbsp;&nbsp;&nbsp;UseOldStyleGridAxisColors=y<br />
<br />
&nbsp;&nbsp;&nbsp;&nbsp;Also added in an option for displaying the z axis grid line in the 3D view, under Options > Grid > "Show grid z axis in 3D view" checkbox.<br />
<br />
Update IGES export<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;Add an option under Options > Import/Export > IGES options > "Write solids as" for writing out solids as either an IGES type 186 "Manifold Solid B-Rep" entity or whether to write them as individual separate surfaces as MoI v3 and earlier always did.<br />
<br />
Update Draw solid > Text command - font styles<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;Add a Style: option to the Draw solid > Text command to make it possible to access styles of the font other than bold/italic. Requested on the forum by Javier here:<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;http://moi3d.com/forum/index.php?webtag=MOI&msg=8766.1<br />
<br />
Update error message when command not found.<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;Pop up a "command not found" dialog instead of a script exception dialog if trying to exec a command that was not found in any command folder.<br />
<br />
Update Help > About dialog<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;Add links for showing license keys and EULA from Help > About dialog. The license key dialog also has an option to clear out license keys.<br />
<br />
Detailed object properties dialog<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;Implement undo for annotation property changes in detailed object properties dialog.<br />
<br />
Update detailed properties panel types report<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;Add reports for all curves, all edges, and all brep edges if there is a mix of different types so there is one label that can be targeted for grabbing all edges or all curves instead of needing to shift+click on both "Open curves" and "Closed curves" for example.<br />
<br />
Add scale factor option for SubD import, in moi.ini<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;[SubD Import]<br />
&nbsp;&nbsp;&nbsp;&nbsp;ScaleFactor=1.0<br />
&nbsp;&nbsp;&nbsp;&nbsp;requested by Tudor in the forum here:<br />
&nbsp;&nbsp;&nbsp;&nbsp;http://moi3d.com/forum/index.php?webtag=MOI&msg=8665.109<br />
<br />
Update annotations bounding size<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;Don't include annotations in the bounding size for the edit frame or the properties panel, unless only annotations are selected.<br />
<br />
&nbsp;&nbsp;&nbsp;&nbsp;There is a moi.ini option to include annotations always in these sizes:<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;[Annotations] IncludeAnnotationsInBoundingBox=y<br><br />
&nbsp;&nbsp;&nbsp;&nbsp; <br />
&nbsp;&nbsp;&nbsp;&nbsp;Discussed in the forum here:<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;http://moi3d.com/forum/index.php?webtag=MOI&msg=9526.30<br />
&nbsp;&nbsp;&nbsp;&nbsp;<br />
Update persistence of "Mesh angle" option.<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;On startup, clamp the value for Options > View > Meshing parameters > Mesh angle to be between 10 and 45 degrees. It can be set lower by a startup script.<br />
<br />
Update annotation text display - substitution fonts<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;Enable use of substitution fonts in annotation text rendering. This will automatically switch to a fallback font if the current font does not have glyphs for unicode text characters being displayed.<br />
<br />
Update sub-d import<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;Use mesh object name in sub-d obj file conversion, and merge styles with the same names and colors. Requested in the forum by pafurijaz here:<br />
&nbsp;&nbsp;&nbsp;&nbsp;http://moi3d.com/forum/index.php?webtag=MOI&msg=9660.142<br />
<br />
Update edit styles dialog.<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;Show gray text on styles with nothing assigned to them same as the scene browser. Requested by pafurijaz in the forum here:<br />
&nbsp;&nbsp;&nbsp;&nbsp;http://moi3d.com/forum/index.php?webtag=MOI&msg=9660.148<br />
<br />
Update object dragging<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;Option for disabling object dragging so clicking on objects will only do selections and not any drags.Set under moi.ini under:<br />
&nbsp;&nbsp;&nbsp;&nbsp;[Selection]<br />
&nbsp;&nbsp;&nbsp;&nbsp;<...>'<br />
&nbsp;&nbsp;&nbsp;&nbsp;DisableObjectDrag=y<br />
<br />
<br />
<br />
Bug fixes:<br />
<br />
Fix window un-maximize bug on Windows - Fixed bug where the restored window position used for un-maximizing a window would keep growing larger on every run.<br />
<br />
Updated selection with filters on - if a selection filter is active, when clicking on an edge or face object to select it do the selection update immediately on the mouse press instead of mouse release. Fixes a bug reported by pior in the forum here:<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=9660.24<br />
<br />
Updated hit testing. Fixed bug where edge boost for selected breps was happening even for objects with selection lock on them. So in the case of boolean difference, the base object was having its edges boosted over top of any standalone curves in the same spot, preventing them from being selected. Fixes a bug reported through e-mail by Vladimir.<br />
<br />
Fixed annotation text bugs with text anchor property. The text anchor property was not persisting properly for all values.<br />
<br />
Fixed a bug with importing a DEGENERATE_TOROIDAL_SURFACE surface type through STEP format.<br />
<br />
Fixed a chamfer/fillet bug with skinny surfaces. If a chamfer surface was skinny (less than 10*tolerance across) it was possible for the chamfer surfaces to get connected improperly since it took just the first one within tolerance instead of the closest one.<br />
<br />
Fixed a bug with keyboard shortcut handling on Mac with a Japanese keyboard. Reported on the forum by nemuneko here:<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=9660.39<br />
<br />
Fixed shortcut key bug where cpaslock key was being interpreted as the letter "A" key.<br><br />
Reported on the forum by nemuneko here: http://moi3d.com/forum/index.php?webtag=MOI&msg=9660.39<br />
<br />
Fixed bugs with dialog size and positioning.<br><br />
Previously when showing a resizable dialog, if there was a saved size from a previous use it would restore that same size. The bug from that was if the dialog size was done on a high resolution monitor and now the use has switched to a different screen the saved dialog size could exceed the current screen resolution. Fixed by limiting saved dialog width and height by current screen size. Also if a saved position for a dialog will be used, check if it is visible on screen before using it. Additionally, don't allow resizable dialogs to shrink to down 0 width or height. Fixes bugs reported through e-mail by James.<br />
<br />
Fixed sweep bug - Freeform sweep framing had a bug when rail segments were anti-tangent. Fixes a bug reported through e-mail by Pilou.<br />
<br />
Updated dimension text rendering - Y positioning for glyphs used incorrect rouning. Was causing noticeable mis-positioned glyphs when using Gill Sans 18 pt font on Mac. Fixes a text display bug reported through e-mail by James.<br />
<br />
Variable radius filleting - linear blend fix. Fixed a bug in variable radius filleting with "linear blend" option where fillet surfaces were not being extended properly. Fixes a bug reported on the forum by Dan R here:<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=9753.1<br />
<br />
Fixed arrowhead bug - outside dimension arrowhead lines not placed correctly on larger scaled objects. Fixes a bug reported through e-mail by James.<br />
<br />
Fixed dimension feet & inches display - for feet&inches, check if the font does not support any Unicode fraction characters being used and if not replace with long form text like 1/2.<br />
<br />
Fixed STEP/IGES import of composite curve entities with G0 discontinuities. Look for G0 discontinuities in imported curves and break those out to separate curves.<br />
<br />
Fix file dialog bug - Fix bug where file open dialog called by script was not returning empty string when canceled. Fixes node editor bug reported in the forum by Wayne here:<br><br />
http://moi3d.com/forum/messages.php?webtag=MOI&msg=7713.880<br />
<br />
Fix Extrude bug with end caps disabled - When making a curve extrude with end caps disabled, a brep with disjoint shells would be created if there were any interior holes in the extrusion.<br />
<br />
Update sweep - true up rail segment ends. If segment end tangents are within 2 degrees of tangent, true them up to be exactly tangent if possible. This can improve corner mitering fails with segments that are nearly G1 but not quite. Fixes bug reported through e-mail by Salvatore.<br />
<br />
Fix curve fillet bugs -<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;Fix curve filleting bug reported by Cemortan_Tudor in the forum here:<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;http://moi3d.com/forum/index.php?webtag=MOI&msg=8665.97<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;and also another curve filleting bug reported a long time ago in the forum by macray here:<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=4958.1<br />
<br />
Fix select last created not working with drag/copy. Reported by Tudor in the forum here:<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=8665.115<br />
<br />
Fix bug in orient line / line<br><br />
Fix bug when line directions pointing opposite each other. Fixes a bug reported in the forum by Karsten here:<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=9476.422<br />
<br />
Fix file dialog crash on Mac Catalina OS<br><br />
Implement fix for QTBUG-83342 for an OS bug that could cause the file dialog to crash on Mac Catalina OS.<br />
<br />
<br />
Scripting updates:<br />
<br />
Added Curve.getIsTangentEdge( AngleToleranceDegrees /* optional, default = 2 degrees */ );<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;- returns true if the 2 surfaces on either side of the edge are tangent to each other.<br />
<br />
Added CurveSegment.getIsG1ToAdjacentSegment( 0 /* 0 for start, 1 for end */ );<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;- returns true if the next segment at the start or end is smooth to the current curve segment.<br />
<br />
moi.filesystem.shellExecute(), added wait for finished parameter.<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;moi.filesystem.shellExecute( path, params, wait ) now takes an optional 3rd boolean parameter for whether to wait until the called process has exited before returning. When used, the return value from shellExecute() is an object containing an .exitCode property for the integer exit code of the called process and an .output string parameter for any text written by the called process to stdout.<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;Example:<br />
&nbsp;&nbsp;&nbsp;&nbsp;var res = moi.filesystem.shellExecute( 'cmd /c dir c:\\', '', true );<br />
&nbsp;&nbsp;&nbsp;&nbsp;if ( res.output ) moi.ui.alert( res.output );<br />
<br />
Updated geometryDatabase::addObject()<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;Ignore the add if the given object is already in the geometry database. Fixes node editor bug reported by Brian here:<br />
&nbsp;&nbsp;&nbsp;&nbsp;http://moi3d.com/forum/index.php?webtag=MOI&msg=7777.1668<br />
<br />
Add face.isNew and curve.isNewEdge properties.<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;These will be set to true if the face or edge was newly generated instead of coming from a copy or split off piece of an original one.<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;example:<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;script: /* Select new edges at intersections after a boolean command */ moi.geometryDatabase.deselectAll();<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;var breps = moi.geometryDatabase.getLastCreated().getBReps(); for ( var i = 0; i < breps.length; ++i )<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;{ var edges = breps.item(i).getEdges(); for ( var j = 0; j < edges.length; ++j ) { var e = edges.item(j);<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;if ( e.isNewEdge ) e.selected = true; } }<br><br />
<br />
Add moi.geometryDatabase.getLastCreated(); - get an object list of the objects that were created by the last run command.<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;Example:<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;script: /* Select fillet surfaces */ moi.geometryDatabase.deselectAll(); var breps = moi.geometryDatabase.getLastCreated().getBReps();<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;for ( var i = 0; i < breps.length; ++i ) { var faces = breps.item(i).getFaces(); for ( var j = 0; j < faces.length; ++j )<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;{ var f = faces.item(j); if ( f.isNew ) f.selected = true; } }<br><br />
<br />
Update MoiList and ObjectList - Add list.clear() and objectlist.clear() methods which will empty out the list so it has length=0.<br />
<br />
Add curve.changeClosedCurveSeam( new_start_parameter, rebuild_circles /*optional, default = true */ );<br />
<br />
Update scripting - window moving and sizing methods.<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;Add window positioning methods:<br />
<br />
&nbsp;&nbsp;&nbsp;&nbsp;win.move( x, y ); - move the window to the given x,y screen coordinates. Can be given either one argument of an object with x,y properties, or 2 numeric arguments.<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;win.resize( width, height ) - resize the client area of a window to the given width and height. Can be given either one argument with x,y or width,height properties, or 2 numeric arguments.<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;win.getPosition() - returns an object with .x and .y properties for the window's screen coordinates.<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;win.getSize() - returns an object with .width and .height properties for the window's client area width and height.<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;win.getFrameSize() - returns an object with .width and .height properties for the window frame's width and height.<br />
<br />
&nbsp;&nbsp;&nbsp;&nbsp;Also added moi.ui.getScreenRect( element ) which will give the screen coordinates of the given element or UIPanel. Returns an object with .left, .top, .right, .bottom, .width, and .height properties.<br />
<br />
&nbsp;&nbsp;&nbsp;&nbsp;Example - increase the Options dialog width by 10 pixels:<br />
<br />
&nbsp;&nbsp;&nbsp;&nbsp;var uipanel = moi.ui.getUIPanel( 'moi://ui/options.htm' );<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;if ( uipanel )<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;{<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;var dlg = uipanel.moiWindow;<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;var pos = dlg.getSize(); pos.width += 10; dlg.resize( pos );<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;}<br />
<br />
&nbsp;&nbsp;&nbsp;&nbsp;Example - position the Options dialog to the right of the side pane:<br />
<br />
&nbsp;&nbsp;&nbsp;&nbsp;var options = moi.ui.getUIPanel( 'moi://ui/options.htm' );<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;if ( options )<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;{<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;var rc = moi.ui.getScreenRect(moi.ui.sidePane);<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;options.moiWindow.move(rc.right,rc.top);<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;}<br />
<br />
Update view tabs customization<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;Call a function UpdateViewTab( TabButton ) in the UI when a view tab has been reversed, so that it is possible to implement custom UI like having images there instead of text. Requested on the forum by Tim Whiteman here:<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=9821.1<br />
<br />
<br />
Update Esc script cancelling<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;Use different method to determine time since last wait for event. The previous method of watching calls to WaitableObject::waitForEvent() is not good because there are other kinds of event loops that do not go through WaitableObject, like modal dialogs or combo box dropdowns. The new method should handle all types of event loops.<br />
<br />
Update offset factory - Enable a new property factory.curveOffsetDistance to return the distance used by offset in through point mode.<br />
<br />
Update pointpicker, add .recalc() method Requested on the forum by Tudor here:<br><br />
http://moi3d.com/forum/index.php?webtag=MOI&msg=8665.221</div>Michael Gibsonhttp://moi3d.com/wiki/index.php?title=Resources&diff=905Resources2020-08-07T07:04:03Z<p>Michael Gibson: </p>
<hr />
<div><big>Links to useful MoI information on the web</big>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;([[Resources_%28french%29|Version Française ici]])<br />
<br />
[http://moi3d.com MoI home page] <br />
<br />
[http://moi3d.com/forum MoI discussion forum]<br />
<br />
[[FAQ|Frequently Asked Questions]]<br />
<br />
[http://moi3d.com/3.0/docs/moi_help.htm MoI help file online] &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;([http://moi3d.com/3.0/docs/moi_help_French.htm French])&nbsp;&nbsp;([http://moi3d.com/2.0/docs/moi_help_German.htm German])&nbsp;&nbsp;([http://moi3d.com/2.0/docs/moi_help_Spanish.htm Spanish])&nbsp;&nbsp;([http://moi3d.com/1.0/docs/moi_help_Italian.htm Italian])<br />
<br />
[[Shortcut Keys]]<br />
<br />
[[Hidden Secrets]]<br />
<br />
[[Scripting]] <br />
<br />
[http://kyticka.webzdarma.cz/3d/moi/ Petr's MoI page], contains a variety of MoI information including scripts and custom commands. ([http://moiscript.weebly.com/ French version])<br />
<br />
[http://moi.maxsm.net/ Max Smirnov's MoI scripts], numerous advanced scripts from Max. [http://moi.maxsm.net/media/files/ Max's file archive ]([http://moiscript.weebly.com/ French version])<br />
<br />
[http://moi3d.com/forum/index.php?webtag=MOI&msg=7841.6 Burr's script archive - collection of scripts that have been posted on the forum]<br />
<br />
[[V4Beta|V4 Beta release notes]]<br />
<br />
[[Nodeeditor|Node editor plugin]]<br />
<br />
[http://moi3d.com/3.0/EULA_retail.rtf MoI End User License Agreement]<br />
<br />
<br />
Language packs: ([http://moi3d.com/2.0/docs/v2_Spanish_update.zip Spanish v2 update])&nbsp;&nbsp;([http://moi3d.com/1.0/docs/Italian_language_pack.zip Italian UI and help file]) ([http://moi3d.com/2.0/docs/french_command_reference_update.zip French v2 update]) ([http://moi3d.com/2.0/docs/v2_German_update.zip German v2 update])<br />
<br />
<br />
<br />
== Tutorials ==<br />
[http://moi3d.com/3.0/docs/tutorials.htm MoI documentation video tutorials]<br />
<br />
[https://gumroad.com/l/fGqqS MoI for Game Assets video tutorial by Arrimus 3D - 5 hours $9.99 on Gumroad]<br />
<br />
[https://gumroad.com/l/vavRq MoI Basics video tutorial by Bojan Koturanović - 7 hours $25 on Gumroad]<br />
<br />
[http://moiusers.blogspot.com/ Introductory videos by Tom Meeks] - videos with narration covering a lot of basics.<br />
<br />
[http://moi3d.com/forum/index.php?webtag=MOI&msg=9816.1 48 German language video tutorials by Stefan Schneller on jewelry design]<br />
<br />
[http://moi3d.com/download/Moi3d-Overview.pdf Introduction and overview PDF by Fabien Franzen]<br />
<br />
[http://moi3d.com/forum/index.php?webtag=MOI&msg=7389.1 Sub-d car modeling in MoI by Ed Ferguson]<br />
<br />
[http://moi3d.com/forum/index.php?webtag=MOI&msg=9899.1 Custom truck tutorial by Ed Ferguson]<br />
<br />
[http://www.k4icy.com/tutorials.html Mike Maynard's tutorials], and here 18 of them [http://moiscript.weebly.com/ in French by Pilou]<br />
<br />
[http://moi3d.com/forum/index.php?webtag=MOI&msg=6058.1 Videos from Andrei Samardac]<br />
<br />
[http://moi3d.com/forum/index.php?webtag=MOI&msg=3842.1 Video from lyes on modeling a SpacePilot controller]<br />
<br />
[http://vimeo.com/channels/moi3d Vimeo channel with tutorials from lyes]<br />
<br />
[http://bitreality.blogspot.com/ Joe's classical column video tutorials]<br />
<br />
[http://moi3d.com/forum/index.php?webtag=MOI&msg=402.9 Japanese bathtub tutorial]<br />
<br />
[http://moi3d.com/forum/index.php?webtag=MOI&msg=446.17 Object repair tutorial]<br />
<br />
[http://moi3d.com/forum/index.php?webtag=MOI&msg=284.1 Ring tutorial by Jesse Kaufman], and [http://moi3d.com/forum/index.php?webtag=MOI&msg=510.5 #2], [http://moi3d.com/forum/index.php?webtag=MOI&msg=623.1 #3], <br />
[http://moi3d.com/forum/index.php?webtag=MOI&msg=556.1 #4],<br />
[http://moi3d.com/forum/index.php?webtag=MOI&msg=538.6 #5],<br />
[http://moi3d.com/forum/index.php?webtag=MOI&msg=536.1 #6]<br />
<br />
[http://moi3d.com/forum/index.php?webtag=MOI&msg=1175.3 Simple ring using rail revolve], and [http://moi3d.com/forum/index.php?webtag=MOI&msg=1175.5 variant using sweep + scaling rail for more control]<br />
<br />
[http://moi3d.com/forum/index.php?webtag=MOI&msg=1057.1 Product design forums modeling challenges] (not specific to MoI but useful for general CAD modeling strategy).<br />
<br />
[http://moi3d.com/forum/index.php?webtag=MOI&msg=606.4 Simple Intarsia type design]<br />
<br />
[http://moi3d.com/forum/index.php?webtag=MOI&msg=1171.2 Creating a 3-toed base foot]<br />
<br />
[http://moi3d.com/forum/index.php?webtag=MOI&msg=1514.1 Modeling a water can out of one smooth surface]<br />
<br />
[http://moi3d.com/forum/index.php?webtag=MOI&msg=2546.1 Ferrari 599 GTB tutorial videos by lyes]<br />
<br />
[http://moi3d.com/forum/index.php?webtag=MOI&msg=2429.1 Snowman figure by PaQ]<br />
<br />
[http://cid-30cffdfa97399495.skydrive.live.com/self.aspx/.Public/Accurate|_Tapers|_MoI|_V2.zip Accurate tapers using Expressions by Danny] ( Not really needed since Extrude now has a taper function good if you want to learn basic trig) D.T.<br />
<br />
[http://moi3d.com/forum/index.php?webtag=MOI&msg=3814.1 Discussions on ship hull techniques]<br />
<br />
[http://moiscript.weebly.com/ Videos: Functions of the Manual by Pilou (in French)]<br />
<br />
[http://vimeo.com/30765016 Making accurate screw threads video from OSTexo]<br />
<br />
[http://vimeo.com/30168354 Flow workflow video from danperk]<br />
<br />
[http://moi3d.com/forum/index.php?webtag=MOI&msg=8845.16 Car modeling techniques by Zarkow], and [http://moi3d.com/forum/index.php?webtag=MOI&msg=8845.5 #2]<br />
<br />
== Helper programs ==<br />
Some standalone small programs to help accomplish specific tasks.<br />
<br />
=== Obj23dmWireframe converter ===<br />
[http://moi3d.com/download/Obj23dmWireframe.zip Download Obj23dmWireframe converter]<br />
<br />
This enables bringing polygon data in an .obj file into MoI to use as a construction guide.<br />
Unzip it to some folder, and then you can run the Obj23dmWireframe.exe program. It will prompt you for the name of an .obj file to read, and after that the name of a .3dm file to create. It will read all the polygon data from the obj file and convert the edges of polygons into line segments, and then write those line segments to the 3dm file. You can then load that 3dm file into MoI and use those line segments to snap on to. Originally posted on the forum [http://moi3d.com/forum/index.php?webtag=MOI&msg=1099.1 here].<br />
<br />
=== MergeOBJ utility ===<br />
[http://moi3d.com/download/MergeOBJ.exe Download MergeOBJ utility]<br />
<br />
This utility program can combine several input OBJ files into one single OBJ file. This may be useful if you want to build up a set of different OBJ files possibly by exporting pieces with different mesh settings, and then combine them into one OBJ file if your target program wants to work with only a single file. This was created because the freely available mesh editing tools have a tendency to remove vertex normals when combining files together, this utility will preserve vertex normals. Announced on the forum [http://moi3d.com/forum/index.php?webtag=MOI&msg=3570.12 here].<br />
<br />
=== Old utilities ===<br />
[http://moi3d.com/download/3dmCurves2DXF.zip 3dmCurves2DXF converter] - This could convert curves in a 3DM file to a DXF file to be used for CAM programs. It's not needed anymore since MoI v3 now directly supports DXF file export.<br><br><br />
These utilities were to help with MoI v1 which did not export material assignments to OBJ files. Since MoI v2 can control material assignments by assigning Styles, these are no longer necessary but are still included here for v1 users.<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;[http://moi3d.com/download/SeparateOBJ.zip SeparateOBJ editor] - Breaks an OBJ file exported from MoI v1 into smaller pieces and puts separate material assignments on each piece for import into programs that require that.<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;[http://moi3d.com/download/MergeOBJ_old.zip MergeOBJ editor (old version)] - Edits an OBJ file to combine all the different objects in it into one single object so there will be just one material for the whole thing.</div>Michael Gibsonhttp://moi3d.com/wiki/index.php?title=Resources&diff=904Resources2020-08-07T07:03:10Z<p>Michael Gibson: </p>
<hr />
<div><big>Links to useful MoI information on the web</big>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;([[Resources_%28french%29|Version Française ici]])<br />
<br />
[http://moi3d.com MoI home page] <br />
<br />
[http://moi3d.com/forum MoI discussion forum]<br />
<br />
[[FAQ|Frequently Asked Questions]]<br />
<br />
[http://moi3d.com/3.0/docs/moi_help.htm MoI help file online] &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;([http://moi3d.com/3.0/docs/moi_help_French.htm French])&nbsp;&nbsp;([http://moi3d.com/2.0/docs/moi_help_German.htm German])&nbsp;&nbsp;([http://moi3d.com/2.0/docs/moi_help_Spanish.htm Spanish])&nbsp;&nbsp;([http://moi3d.com/1.0/docs/moi_help_Italian.htm Italian])<br />
<br />
[[Shortcut Keys]]<br />
<br />
[[Hidden Secrets]]<br />
<br />
[[Scripting]] <br />
<br />
[http://kyticka.webzdarma.cz/3d/moi/ Petr's MoI page], contains a variety of MoI information including scripts and custom commands. ([http://moiscript.weebly.com/ French version])<br />
<br />
[http://moi.maxsm.net/ Max Smirnov's MoI scripts], numerous advanced scripts from Max. [http://moi.maxsm.net/media/files/ Max's file archive ]([http://moiscript.weebly.com/ French version])<br />
<br />
[http://moi3d.com/forum/index.php?webtag=MOI&msg=7841.6 Burr's script archive]<br />
<br />
[[V4Beta|V4 Beta release notes]]<br />
<br />
[[Nodeeditor|Node editor plugin]]<br />
<br />
[http://moi3d.com/3.0/EULA_retail.rtf MoI End User License Agreement]<br />
<br />
<br />
Language packs: ([http://moi3d.com/2.0/docs/v2_Spanish_update.zip Spanish v2 update])&nbsp;&nbsp;([http://moi3d.com/1.0/docs/Italian_language_pack.zip Italian UI and help file]) ([http://moi3d.com/2.0/docs/french_command_reference_update.zip French v2 update]) ([http://moi3d.com/2.0/docs/v2_German_update.zip German v2 update])<br />
<br />
<br />
<br />
== Tutorials ==<br />
[http://moi3d.com/3.0/docs/tutorials.htm MoI documentation video tutorials]<br />
<br />
[https://gumroad.com/l/fGqqS MoI for Game Assets video tutorial by Arrimus 3D - 5 hours $9.99 on Gumroad]<br />
<br />
[https://gumroad.com/l/vavRq MoI Basics video tutorial by Bojan Koturanović - 7 hours $25 on Gumroad]<br />
<br />
[http://moiusers.blogspot.com/ Introductory videos by Tom Meeks] - videos with narration covering a lot of basics.<br />
<br />
[http://moi3d.com/forum/index.php?webtag=MOI&msg=9816.1 48 German language video tutorials by Stefan Schneller on jewelry design]<br />
<br />
[http://moi3d.com/download/Moi3d-Overview.pdf Introduction and overview PDF by Fabien Franzen]<br />
<br />
[http://moi3d.com/forum/index.php?webtag=MOI&msg=7389.1 Sub-d car modeling in MoI by Ed Ferguson]<br />
<br />
[http://moi3d.com/forum/index.php?webtag=MOI&msg=9899.1 Custom truck tutorial by Ed Ferguson]<br />
<br />
[http://www.k4icy.com/tutorials.html Mike Maynard's tutorials], and here 18 of them [http://moiscript.weebly.com/ in French by Pilou]<br />
<br />
[http://moi3d.com/forum/index.php?webtag=MOI&msg=6058.1 Videos from Andrei Samardac]<br />
<br />
[http://moi3d.com/forum/index.php?webtag=MOI&msg=3842.1 Video from lyes on modeling a SpacePilot controller]<br />
<br />
[http://vimeo.com/channels/moi3d Vimeo channel with tutorials from lyes]<br />
<br />
[http://bitreality.blogspot.com/ Joe's classical column video tutorials]<br />
<br />
[http://moi3d.com/forum/index.php?webtag=MOI&msg=402.9 Japanese bathtub tutorial]<br />
<br />
[http://moi3d.com/forum/index.php?webtag=MOI&msg=446.17 Object repair tutorial]<br />
<br />
[http://moi3d.com/forum/index.php?webtag=MOI&msg=284.1 Ring tutorial by Jesse Kaufman], and [http://moi3d.com/forum/index.php?webtag=MOI&msg=510.5 #2], [http://moi3d.com/forum/index.php?webtag=MOI&msg=623.1 #3], <br />
[http://moi3d.com/forum/index.php?webtag=MOI&msg=556.1 #4],<br />
[http://moi3d.com/forum/index.php?webtag=MOI&msg=538.6 #5],<br />
[http://moi3d.com/forum/index.php?webtag=MOI&msg=536.1 #6]<br />
<br />
[http://moi3d.com/forum/index.php?webtag=MOI&msg=1175.3 Simple ring using rail revolve], and [http://moi3d.com/forum/index.php?webtag=MOI&msg=1175.5 variant using sweep + scaling rail for more control]<br />
<br />
[http://moi3d.com/forum/index.php?webtag=MOI&msg=1057.1 Product design forums modeling challenges] (not specific to MoI but useful for general CAD modeling strategy).<br />
<br />
[http://moi3d.com/forum/index.php?webtag=MOI&msg=606.4 Simple Intarsia type design]<br />
<br />
[http://moi3d.com/forum/index.php?webtag=MOI&msg=1171.2 Creating a 3-toed base foot]<br />
<br />
[http://moi3d.com/forum/index.php?webtag=MOI&msg=1514.1 Modeling a water can out of one smooth surface]<br />
<br />
[http://moi3d.com/forum/index.php?webtag=MOI&msg=2546.1 Ferrari 599 GTB tutorial videos by lyes]<br />
<br />
[http://moi3d.com/forum/index.php?webtag=MOI&msg=2429.1 Snowman figure by PaQ]<br />
<br />
[http://cid-30cffdfa97399495.skydrive.live.com/self.aspx/.Public/Accurate|_Tapers|_MoI|_V2.zip Accurate tapers using Expressions by Danny] ( Not really needed since Extrude now has a taper function good if you want to learn basic trig) D.T.<br />
<br />
[http://moi3d.com/forum/index.php?webtag=MOI&msg=3814.1 Discussions on ship hull techniques]<br />
<br />
[http://moiscript.weebly.com/ Videos: Functions of the Manual by Pilou (in French)]<br />
<br />
[http://vimeo.com/30765016 Making accurate screw threads video from OSTexo]<br />
<br />
[http://vimeo.com/30168354 Flow workflow video from danperk]<br />
<br />
[http://moi3d.com/forum/index.php?webtag=MOI&msg=8845.16 Car modeling techniques by Zarkow], and [http://moi3d.com/forum/index.php?webtag=MOI&msg=8845.5 #2]<br />
<br />
== Helper programs ==<br />
Some standalone small programs to help accomplish specific tasks.<br />
<br />
=== Obj23dmWireframe converter ===<br />
[http://moi3d.com/download/Obj23dmWireframe.zip Download Obj23dmWireframe converter]<br />
<br />
This enables bringing polygon data in an .obj file into MoI to use as a construction guide.<br />
Unzip it to some folder, and then you can run the Obj23dmWireframe.exe program. It will prompt you for the name of an .obj file to read, and after that the name of a .3dm file to create. It will read all the polygon data from the obj file and convert the edges of polygons into line segments, and then write those line segments to the 3dm file. You can then load that 3dm file into MoI and use those line segments to snap on to. Originally posted on the forum [http://moi3d.com/forum/index.php?webtag=MOI&msg=1099.1 here].<br />
<br />
=== MergeOBJ utility ===<br />
[http://moi3d.com/download/MergeOBJ.exe Download MergeOBJ utility]<br />
<br />
This utility program can combine several input OBJ files into one single OBJ file. This may be useful if you want to build up a set of different OBJ files possibly by exporting pieces with different mesh settings, and then combine them into one OBJ file if your target program wants to work with only a single file. This was created because the freely available mesh editing tools have a tendency to remove vertex normals when combining files together, this utility will preserve vertex normals. Announced on the forum [http://moi3d.com/forum/index.php?webtag=MOI&msg=3570.12 here].<br />
<br />
=== Old utilities ===<br />
[http://moi3d.com/download/3dmCurves2DXF.zip 3dmCurves2DXF converter] - This could convert curves in a 3DM file to a DXF file to be used for CAM programs. It's not needed anymore since MoI v3 now directly supports DXF file export.<br><br><br />
These utilities were to help with MoI v1 which did not export material assignments to OBJ files. Since MoI v2 can control material assignments by assigning Styles, these are no longer necessary but are still included here for v1 users.<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;[http://moi3d.com/download/SeparateOBJ.zip SeparateOBJ editor] - Breaks an OBJ file exported from MoI v1 into smaller pieces and puts separate material assignments on each piece for import into programs that require that.<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;[http://moi3d.com/download/MergeOBJ_old.zip MergeOBJ editor (old version)] - Edits an OBJ file to combine all the different objects in it into one single object so there will be just one material for the whole thing.</div>Michael Gibsonhttp://moi3d.com/wiki/index.php?title=Resources&diff=903Resources2020-07-30T07:47:20Z<p>Michael Gibson: </p>
<hr />
<div><big>Links to useful MoI information on the web</big>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;([[Resources_%28french%29|Version Française ici]])<br />
<br />
[http://moi3d.com MoI home page] <br />
<br />
[http://moi3d.com/forum MoI discussion forum]<br />
<br />
[[FAQ|Frequently Asked Questions]]<br />
<br />
[http://moi3d.com/3.0/docs/moi_help.htm MoI help file online] &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;([http://moi3d.com/3.0/docs/moi_help_French.htm French])&nbsp;&nbsp;([http://moi3d.com/2.0/docs/moi_help_German.htm German])&nbsp;&nbsp;([http://moi3d.com/2.0/docs/moi_help_Spanish.htm Spanish])&nbsp;&nbsp;([http://moi3d.com/1.0/docs/moi_help_Italian.htm Italian])<br />
<br />
[[Shortcut Keys]]<br />
<br />
[[Hidden Secrets]]<br />
<br />
[[Scripting]] <br />
<br />
[http://kyticka.webzdarma.cz/3d/moi/ Petr's MoI page], contains a variety of MoI information including scripts and custom commands. ([http://moiscript.weebly.com/ French version])<br />
<br />
[http://moi.maxsm.net/ Max Smirnov's MoI scripts], numerous advanced scripts from Max. [http://moi.maxsm.net/media/files/ Max's file archive ]([http://moiscript.weebly.com/ French version])<br />
<br />
[[V4Beta|V4 Beta release notes]]<br />
<br />
[[Nodeeditor|Node editor plugin]]<br />
<br />
[http://moi3d.com/3.0/EULA_retail.rtf MoI End User License Agreement]<br />
<br />
<br />
Language packs: ([http://moi3d.com/2.0/docs/v2_Spanish_update.zip Spanish v2 update])&nbsp;&nbsp;([http://moi3d.com/1.0/docs/Italian_language_pack.zip Italian UI and help file]) ([http://moi3d.com/2.0/docs/french_command_reference_update.zip French v2 update]) ([http://moi3d.com/2.0/docs/v2_German_update.zip German v2 update])<br />
<br />
<br />
<br />
== Tutorials ==<br />
[http://moi3d.com/3.0/docs/tutorials.htm MoI documentation video tutorials]<br />
<br />
[https://gumroad.com/l/fGqqS MoI for Game Assets video tutorial by Arrimus 3D - 5 hours $9.99 on Gumroad]<br />
<br />
[https://gumroad.com/l/vavRq MoI Basics video tutorial by Bojan Koturanović - 7 hours $25 on Gumroad]<br />
<br />
[http://moiusers.blogspot.com/ Introductory videos by Tom Meeks] - videos with narration covering a lot of basics.<br />
<br />
[http://moi3d.com/forum/index.php?webtag=MOI&msg=9816.1 48 German language video tutorials by Stefan Schneller on jewelry design]<br />
<br />
[http://moi3d.com/download/Moi3d-Overview.pdf Introduction and overview PDF by Fabien Franzen]<br />
<br />
[http://moi3d.com/forum/index.php?webtag=MOI&msg=7389.1 Sub-d car modeling in MoI by Ed Ferguson]<br />
<br />
[http://moi3d.com/forum/index.php?webtag=MOI&msg=9899.1 Custom truck tutorial by Ed Ferguson]<br />
<br />
[http://www.k4icy.com/tutorials.html Mike Maynard's tutorials], and here 18 of them [http://moiscript.weebly.com/ in French by Pilou]<br />
<br />
[http://moi3d.com/forum/index.php?webtag=MOI&msg=6058.1 Videos from Andrei Samardac]<br />
<br />
[http://moi3d.com/forum/index.php?webtag=MOI&msg=3842.1 Video from lyes on modeling a SpacePilot controller]<br />
<br />
[http://vimeo.com/channels/moi3d Vimeo channel with tutorials from lyes]<br />
<br />
[http://bitreality.blogspot.com/ Joe's classical column video tutorials]<br />
<br />
[http://moi3d.com/forum/index.php?webtag=MOI&msg=402.9 Japanese bathtub tutorial]<br />
<br />
[http://moi3d.com/forum/index.php?webtag=MOI&msg=446.17 Object repair tutorial]<br />
<br />
[http://moi3d.com/forum/index.php?webtag=MOI&msg=284.1 Ring tutorial by Jesse Kaufman], and [http://moi3d.com/forum/index.php?webtag=MOI&msg=510.5 #2], [http://moi3d.com/forum/index.php?webtag=MOI&msg=623.1 #3], <br />
[http://moi3d.com/forum/index.php?webtag=MOI&msg=556.1 #4],<br />
[http://moi3d.com/forum/index.php?webtag=MOI&msg=538.6 #5],<br />
[http://moi3d.com/forum/index.php?webtag=MOI&msg=536.1 #6]<br />
<br />
[http://moi3d.com/forum/index.php?webtag=MOI&msg=1175.3 Simple ring using rail revolve], and [http://moi3d.com/forum/index.php?webtag=MOI&msg=1175.5 variant using sweep + scaling rail for more control]<br />
<br />
[http://moi3d.com/forum/index.php?webtag=MOI&msg=1057.1 Product design forums modeling challenges] (not specific to MoI but useful for general CAD modeling strategy).<br />
<br />
[http://moi3d.com/forum/index.php?webtag=MOI&msg=606.4 Simple Intarsia type design]<br />
<br />
[http://moi3d.com/forum/index.php?webtag=MOI&msg=1171.2 Creating a 3-toed base foot]<br />
<br />
[http://moi3d.com/forum/index.php?webtag=MOI&msg=1514.1 Modeling a water can out of one smooth surface]<br />
<br />
[http://moi3d.com/forum/index.php?webtag=MOI&msg=2546.1 Ferrari 599 GTB tutorial videos by lyes]<br />
<br />
[http://moi3d.com/forum/index.php?webtag=MOI&msg=2429.1 Snowman figure by PaQ]<br />
<br />
[http://cid-30cffdfa97399495.skydrive.live.com/self.aspx/.Public/Accurate|_Tapers|_MoI|_V2.zip Accurate tapers using Expressions by Danny] ( Not really needed since Extrude now has a taper function good if you want to learn basic trig) D.T.<br />
<br />
[http://moi3d.com/forum/index.php?webtag=MOI&msg=3814.1 Discussions on ship hull techniques]<br />
<br />
[http://moiscript.weebly.com/ Videos: Functions of the Manual by Pilou (in French)]<br />
<br />
[http://vimeo.com/30765016 Making accurate screw threads video from OSTexo]<br />
<br />
[http://vimeo.com/30168354 Flow workflow video from danperk]<br />
<br />
[http://moi3d.com/forum/index.php?webtag=MOI&msg=8845.16 Car modeling techniques by Zarkow], and [http://moi3d.com/forum/index.php?webtag=MOI&msg=8845.5 #2]<br />
<br />
== Helper programs ==<br />
Some standalone small programs to help accomplish specific tasks.<br />
<br />
=== Obj23dmWireframe converter ===<br />
[http://moi3d.com/download/Obj23dmWireframe.zip Download Obj23dmWireframe converter]<br />
<br />
This enables bringing polygon data in an .obj file into MoI to use as a construction guide.<br />
Unzip it to some folder, and then you can run the Obj23dmWireframe.exe program. It will prompt you for the name of an .obj file to read, and after that the name of a .3dm file to create. It will read all the polygon data from the obj file and convert the edges of polygons into line segments, and then write those line segments to the 3dm file. You can then load that 3dm file into MoI and use those line segments to snap on to. Originally posted on the forum [http://moi3d.com/forum/index.php?webtag=MOI&msg=1099.1 here].<br />
<br />
=== MergeOBJ utility ===<br />
[http://moi3d.com/download/MergeOBJ.exe Download MergeOBJ utility]<br />
<br />
This utility program can combine several input OBJ files into one single OBJ file. This may be useful if you want to build up a set of different OBJ files possibly by exporting pieces with different mesh settings, and then combine them into one OBJ file if your target program wants to work with only a single file. This was created because the freely available mesh editing tools have a tendency to remove vertex normals when combining files together, this utility will preserve vertex normals. Announced on the forum [http://moi3d.com/forum/index.php?webtag=MOI&msg=3570.12 here].<br />
<br />
=== Old utilities ===<br />
[http://moi3d.com/download/3dmCurves2DXF.zip 3dmCurves2DXF converter] - This could convert curves in a 3DM file to a DXF file to be used for CAM programs. It's not needed anymore since MoI v3 now directly supports DXF file export.<br><br><br />
These utilities were to help with MoI v1 which did not export material assignments to OBJ files. Since MoI v2 can control material assignments by assigning Styles, these are no longer necessary but are still included here for v1 users.<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;[http://moi3d.com/download/SeparateOBJ.zip SeparateOBJ editor] - Breaks an OBJ file exported from MoI v1 into smaller pieces and puts separate material assignments on each piece for import into programs that require that.<br><br />
&nbsp;&nbsp;&nbsp;&nbsp;[http://moi3d.com/download/MergeOBJ_old.zip MergeOBJ editor (old version)] - Edits an OBJ file to combine all the different objects in it into one single object so there will be just one material for the whole thing.</div>Michael Gibson