MoI discussion forum
MoI discussion forum

Full Version: V4 beta Oct-27-2020 available now

Show messages:  1-18  19-38  39-58  59-78  79-98  99-118  119-138  139-158

From: Larry Fahnoe (FAHNOE)
31 Oct 2020   [#79] In reply to [#77]
Hi Brian,

Indeed, neither the edge nor curve that resulted from copy/paste of the edge are arcs:

The edge's Details are: Open edge, Joined, Planar

The pasted curve's details are: Open curve, Planar, 1 segment

And a real arc's details are: Open curve, Arc, Planar, 1 segment

From the API perspective I believe the relevant properties are isCircle and isArc.

Odd though that a boolean diff with a sphere as cutting object wouldn't have left an arc behind but I suppose it depends upon the object being cut.

> How does MoI know if a curve is an arc?

It's Halloween, so it must just be magic... ;-}

--Larry
From: bemfarmer
31 Oct 2020   [#80] In reply to [#79]
:-)
Awaiting Michaels response.

- Brian
From: Michael Gibson
31 Oct 2020   [#81] In reply to [#76]
Hi Larry, yes that's not really a bug in the dimensions, it's like Brian writes above that the edges are not being recognized as arcs.

Currently MoI looks at a curve and in order to be recognized as an arc it must have the same curvature (within a very tight tolerance of 0.0000000001 units) at 10 points sampled along it.

Meanwhile the result of the boolean is calculated at an intersection tolerance of 0.001 units. So this mismatch between the "is it an arc" tolerance and the "surface/surface intersection tolerance" is one problem.

But also there is a mechanism that does special case intersections between analytic shapes to get higher precision. However, I have disabled the sphere/plane analytic intersector back a long time ago though because of some bugs in it.

It's pretty risky to modify either the tolerance or the surface/surface intersector right at the end of the beta cycle, so this is something that I can look at fixing in v5 once that is underway.

- Michael
From: Michael Gibson
31 Oct 2020   [#82] In reply to [#78]
Hi nameless,

re:
> moi.ui.getLastOrientationPickerFrame() <- Is this what I think it is? *rubs eyes with excitement*

Yes, this is the piece that should make it possible to make a plugin that does scaling after positioning an imported object. I'll see if I can set it up.

- Michael
From: bemfarmer
31 Oct 2020   [#83] In reply to [#81]
Just a thought, maybe off-base and not important:
To assist in the dimensioning of curves that look like arcs, but are out of current MoI tolerance testing range,
a small user ran script might be able to test a single arc-like curve, for planarity and arc-ness, with a broader tolerance,
and respond with a radius value, or "not an arc" message? User could add a regular leader with ØR...

https://wiki.mcneel.com/developer/sdksamples/classifycurve

- Brian
From: Michael Gibson
31 Oct 2020   [#84] In reply to [#76]
re: Box / Sphere boolean dimensioning - well analytic intersections are active for plane/plane, plane/cone, plane/cylinder, and plane/torus but not plane/sphere. I seem to remember the problem was that it didn't handle a partial sphere surface instead of a full sphere.

I can dig into it more in v5.

- Michael
From: linograndi
1 Nov 2020   [#85] In reply to [#2]
Congratulations! MoI is awesome. It totally changed my technical modeling approach! Thanks for this amazing software.
From: Larry Fahnoe (FAHNOE)
1 Nov 2020   [#86] In reply to [#84]
Hi Michael,

Thanks for the additional insights into how MoI works, always interesting to read your explanations. I'm totally fine with waiting for the v5 cycle for changes in more critical areas, my joy in using MoI will not be diminished by this little quirk!

--Larry
From: Larry Fahnoe (FAHNOE)
1 Nov 2020   [#87] In reply to [#18]
Hi Michael,

Re: arrow gaps

My initial question about the arrow gaps was spawned by my not particularly liking how the arrow tips extended beyond or overlapped the object being referred to. I have since been experimenting with the arrowGap properties you've shown and see that they do indeed work nicely to address this personal preference. The fact that they are a preset makes them especially flexible, particularly if someone wanted to mix differing styles in the same drawing. It would be nice to see these exposed in the preset UI.

While I was experimenting, I also found the discussion about mitered tips of the arrowheads http://moi3d.com/forum/index.php?webtag=MOI&msg=9363.86, so now I see that MiterArrowheads=n is another way to meet this preference. Though since this behaves globally it does not seem to be quite as flexible as the arrowGap properties are.

Since you've indicated that the arrowGap properties may not be as difficult to work with in the future, I would vote for keeping both methods (arrowGap and MiterArrowheads) available in MoI and exposing the arrowGap properties in the UI. If arrowGap turns out to be a problem I'd be perfectly happy with only MiterArrowheads=n.

--Larry
From: pafurijaz
1 Nov 2020   [#88] In reply to [#85]
Great Lino you are every where! Yeah Moi3D is awesome..
From: Michael Gibson
1 Nov 2020   [#89] In reply to [#87]
Hi Larry, I'm glad the arrow gap setting is useful!

Re: MiterArrowheads=n , (http://moi3d.com/forum/index.php?webtag=MOI&msg=9363.86)

The MiterArrowheads moi.ini setting only has an impact on the viewport display inside of MoI, it doesn't affect PDF/AI file content.

Closed arrowheads in the PDF/AI content are not mitered because they have only a fill set for rendering their paths, not a fill + stroke. So for closed arrowheads, there isn't any piece of it that extends further than the tip point.

It's difficult to make the same thing happen on screen vs in PDF file because the screen has a far more limited resolution to work with.

- Michael
From: Michael Gibson
1 Nov 2020   [#90] In reply to [#78]
Hi nameless,

re: moi.ui.getLastOrientationPickerFrame()

So yes this piece should now allow a script to be created that does an "ImportPart" (right click on File > Import) or "PastePart" function (Ctrl+Shift+V) which positions the inserted objects to also scale the object by the proper origin point as an additional step.

I've attached a try at making those here, these versions "ImportPartWithScale", and "PastePartWithScale" should include a scaling step after the positioning. Hope that is close to what you were thinking of.

- Michael

Attachments:
ImportPartWithScale.zip
PastePartWithScale.zip


From: nameless
1 Nov 2020   [#91] In reply to [#90]
Michael,

This is stellar... I can't believe you made this happen so quickly. For me, asset placement is solved with the most elegant/intuitive way.

Thank you so much for keeping your eyes on MoI user needs and for helping us tirelessly. It's so inspiring!!!
From: Michael Gibson
1 Nov 2020   [#92] In reply to [#91]
Hi nameless, you're welcome! Through e-mail you asked if this could be used in the CustomUI object library. I think that should work ok, you would edit the file ObjLibrary.menu.htm on line #26:

code:
			else { moi.command.execCommand( 'importpart '+file); }


Make that say importpartwithscale instead, but take care not to accidentally remove the space that is after it.

- Michael
From: nameless
1 Nov 2020   [#93] In reply to [#92]
Perfection!
From: Mik (MIKULAS)
2 Nov 2020   [#94] In reply to [#72]
Hi Michael,

thanks for more details regarding "4views" project.

re:
>So I mean more like this - you have your model you've made in one file, and a title block template set up in a separate file. Now go ahead and add in dimensions on your model. Then you export to PDF and there is an option for the view configuration. It would have options for "Top", "Front", "Right", "3D" (all single view drawings as it is now), "4 views", or "Use title block template".

If I understand it correctly I make dimensioning on model (part) in all required views in one file, let say in MOI Split view, which is similar to 4 view projection. That's fine.

Only two questions:

.: Would it be possible to "turn off" unusable/invisible dimensions in given view and in 3D view? I mean dimensions marked by white arrow.



.: Would it be possible to specify before export First-angle projection or Third-angle projection (https://en.wikipedia.org/wiki/Multiview_projection)? I mean for example Top, Front, Right and 3D view in specific order given by ANSI or ISO standards, pls see bellow.



Thanks a lot.
Mik

Image Attachments:
4viewsDIM.jpg  ANSI vs ISO technical drawing.jpg 


From: Mik (MIKULAS)
2 Nov 2020   [#95] In reply to [#90]
BTW:

ImportPartWithScale is very useful script, only as a reminder for me, that Import Icon has two different options, I've reworked ImportIcon.png and copied to c:\Program Files\MoI 4.0 beta Oct-27-2020\ui\icons\ImportIcon.png




Mik

Image Attachments:
ImportIcon.png 


From: nameless
2 Nov 2020   [#96] In reply to [#95]
Mik, I wasn't even aware of the existence of this RMB mode of import button until I read your comment!

Image Attachments:
Untitled-1.jpg 


From: Mik (MIKULAS)
2 Nov 2020   [#97] In reply to [#96]
I don't either :-D

MOI is so intuitive that it isn't necessary to read Command Reference :-)

Mik
From: Michael Gibson
2 Nov 2020   [#98] In reply to [#94]
Hi Mik,

re:
> If I understand it correctly I make dimensioning on model (part) in all required views in one file,
> let say in MOI Split view, which is similar to 4 view projection. That's fine.

Yes, that's the idea.


> .: Would it be possible to "turn off" unusable/invisible dimensions in given view and in
> 3D view? I mean dimensions marked by white arrow.

Yes, to make this work there would need to be a new property on dimensions. Something like:

Show in: "All views" , "Ortho views only" , "3D view only".


> .: Would it be possible to specify before export First-angle projection or Third-angle projection
> (https://en.wikipedia.org/wiki/Multiview_projection)? I mean for example Top, Front, Right and
> 3D view in specific order given by ANSI or ISO standards, pls see bellow.

Yes, the idea is that you would be able to put any arrangement you want in the template file. In the template file you would put a rectangle where you want to have a view placed and give the rectangle an object name to identify the view to use. I was thinking the 3D view would use the view from the current 3D viewport but maybe there could also be a way to specify a particular view direction in the template object name as well.

- Michael

Show messages:  1-18  19-38  39-58  59-78  79-98  99-118  119-138  139-158