Lots of unkown
 1-14  …  135-154  155-174  175-194  195-214  215-234  …  355-372

Previous
Next
 From:  Cemortan_Tudor
8665.175 
i'm messing with bool operations difference operations to see all the states for curves
so ~ there's a glitch
on a shape like this with keep objects will delete 'baseobjects'
Attachments:

Image Attachments:
Size: 28.3 KB, Downloaded: 50 times, Dimensions: 574x383px
  Reply Reply More Options
Post Options
Reply as PM Reply as PM
Print Print
Mark as unread Mark as unread
Relationship Relationship
IP Logged

Previous
Next
 From:  Michael Gibson
8665.176 In reply to 8665.175 
Hi Tudor, yes the curve booleans can get confused if you do a boolean between an open curve and a closed curve like that.

You can do an open curves as the base object and a closed curve as the cutter but a closed curve as the base object and an open curve as the cutter will tend to make some weird results. I would recommend to avoid using that combination.

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

Message 8665.177 deleted 12 Jul 2020 by CEMORTAN_TUDOR

Previous
Next
 From:  Cemortan_Tudor
8665.178 
Hi Michael !

I have a dream ))
Editpoints manipulation in 3dSpace if not snapped-> dragging -> http://moi3d.com/forum/index.php?webtag=MOI&msg=8665.117
toogle option
1. accordingly to the 3d view drag should change grid orientation : xy,xz,yz based on pickedpoint drag start position (similar to http://moi3d.com/forum/index.php?webtag=MOI&msg=8665.141)
2. view frame moi.ui.getActiveViewport().targetFrame

I've tried move command - but it requires to many actions for manipulation (for each -> select, move, axis or frame, drag)
this way we won't be snapped to orto views

about
http://moi3d.com/forum/index.php?webtag=MOI&msg=8665.142 - only on init - we can cancel align and do new one if camera changes
- Tudor -
  Reply Reply More Options
Post Options
Reply as PM Reply as PM
Print Print
Mark as unread Mark as unread
Relationship Relationship
IP Logged

Previous
Next
 From:  Michael Gibson
8665.179 In reply to 8665.178 
Hi Tudor, sorry no there isn't a method set up to do what you wan there. Since MoI is designed as a type of CAD program, it has an overall focus on accuracy and not on mushing points around in random directions.

There are other programs that are focused on that type of object manipulation. If that type of operation is important for your work you would be better off using one of those programs that is designed for that type of task rather than MoI which is not designed for that type of work currently.

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

Previous
Next
 From:  Cemortan_Tudor
8665.180 In reply to 8665.179 
It's true that i'm trying to achieve common environment for modeling - hard surface - will be neat future for history sweep update (shape creation)

Here comes a question - I know disable update - will disable sweep's update(idk others which can update) but manual update on what it works ? -> enable history ?

pointpicker.bindFunc() & pointpicker.bindFuncPostUpdate() - differences, references, other wiki locations !

Also with last v4 version will be possible to achieve this future - https://github.com/heimlich1024/OD_CopyPasteExternal
copy/paste obj extension between softwares !
by moi.filesystem.getDirs() as all files are in %system%\Windows\Temp folder

//on git Author use version of Smirmov's import obj future that has ~ normalize and ~ move actions (need digging to understand what they are for, if u know the answer !) - as script -> It should copy/replace same object on same position in different softwares !
- Tudor -
  Reply Reply More Options
Post Options
Reply as PM Reply as PM
Print Print
Mark as unread Mark as unread
Relationship Relationship
IP Logged

Previous
Next
 From:  Michael Gibson
8665.181 In reply to 8665.180 
Hi Tudor,

re:
> Here comes a question - I know disable update - will disable sweep's update(idk others which can update) but
> manual update on what it works ? -> enable history ?

It can be enabled on the results from any command except the Array commands which do not emit history records on objects because it can increase file size on larger arrays by quite a bit. The main limitation to the history function though is that it needs to be able to find the input objects in the current geometry database for it to use them for a recalculation. If the original objects have been removed that will break history updates.


> pointpicker.bindFunc() & pointpicker.bindFuncPostUpdate() - differences, references, other wiki locations !

bindFunc() will make the pointpicker call to the given function before it updates factory inputs and the function can provide the current point value on the pointpicker that will then get pushed to the factory inputs. bindFuncPostUpdate() will make the pointpicker call to the given function after the update sequence has happened so it can look at the results of the update.


> Also with last v4 version will be possible to achieve this future - https://github.com/heimlich1024/OD_CopyPasteExternal
> copy/paste obj extension between softwares !
> by moi.filesystem.getDirs() as all files are in %system%\Windows\Temp folder

I think that system is already working with MoI v3 and v4.


> //on git Author use version of Smirmov's import obj future that has ~ normalize and ~ move actions
> (need digging to understand what they are for, if u know the answer !) - as script -> It should
> copy/replace same object on same position in different softwares !

I think that Max noticed that some programs make .obj files that happen to be at what is considered an unusually small or large scale in MoI, and so he implemented a method to rescale objects to a more normal size when they are read in which is enabled by default. But that is not good for keeping unit sizes the same and so there is an "exact" command line parameter that you can pass in to the script to turn that off:
http://moi3d.com/forum/index.php?webtag=MOI&msg=6674.453

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

Previous
Next
 From:  Cemortan_Tudor
8665.182 
move - expanded first actions - move + x/y/z/a initial conditions (earlier script respond after first pickedpoint)
s - bbox center

extrude - do backup as part is havelly changed from vanilla
p path
b both directions
c cap ends
d directional // changed - removed distance line and input distance (slightly buggy on surfaces if keypressed while moving mouse - I think it can't update in time and skips update factory)
f tapered/flip tapered
Numpad+ increase tapered angle by 15
Shift+Numpad+ increase tapered angle by 5
Numpad- decrease tapered angle by 15
Shift+Numpad- decrease tapered angle by 5
removed t as hotkey

boolean difference
for closed curves
initial and subtractive if both are on same parallel frame but different frame
move subtractive group to initial and do the boolean difference (made for side views where u see that u have 2 circle's but u cannot subtract cuz they have different frames)
- Tudor -

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

Previous
Next
 From:  Cemortan_Tudor
8665.183 
crv.evaluateCurvature - how can I access first and second pt of vector ? -> tried -> [], item(), getStartPt()
- Tudor -
  Reply Reply More Options
Post Options
Reply as PM Reply as PM
Print Print
Mark as unread Mark as unread
Relationship Relationship
IP Logged

Previous
Next
 From:  Michael Gibson
8665.184 In reply to 8665.183 
Hi Tudor,

re:
> crv.evaluateCurvature - how can I access first and second pt of vector ? -> tried -> [], item(), getStartPt()

There is not a first and second point returned, it returns one vector value (with .x, .y, .z - same as a point) for the curvature vector (K) of the curve in the osculating plane at that parameter value. Radius of curvature = 1 / Magnitude K.

https://en.wikipedia.org/wiki/Curvature#Osculating_circle

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

Previous
Next
 From:  Michael Gibson
8665.185 In reply to 8665.183 
re: crv.evaluateCurvature, here is some test code. Make a curve, select it and then push the Tab key and paste this in to the XYZ input control:

var crv = moi.geometryDatabase.getSelectedObjects().getCurves().item(0);
var pt = crv.evaluatePoint( crv.domainMin );
var K = crv.evaluateCurvature( crv.domainMin );
var f = moi.command.createFactory( 'line' );
f.setInput( 0, pt );
f.setInput( 1, moi.vectorMath.add( pt, K ) );
f.commit();

That will make a line showing the curvature vector. The radius of curvature is 1 / length of that line.

Curvature vectors are generally scaled up by quite a bit when used for visualization purposes. They tend to be small in their direct form.

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

Previous
Next
 From:  Cemortan_Tudor
8665.186 
thanks ! that's what i've needed !
- Tudor -
  Reply Reply More Options
Post Options
Reply as PM Reply as PM
Print Print
Mark as unread Mark as unread
Relationship Relationship
IP Logged

Previous
Next
 From:  Cemortan_Tudor
8665.187 
how can I get toplevel from a selection (ex:face or edge to object)
- Tudor -
  Reply Reply More Options
Post Options
Reply as PM Reply as PM
Print Print
Mark as unread Mark as unread
Relationship Relationship
IP Logged

Previous
Next
 From:  Michael Gibson
8665.188 In reply to 8665.187 
Hi Tudor,

re:
> how can I get toplevel from a selection (ex:face or edge to object)

var toplevel = subobj.getTopLevelParent();

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

Previous
Next
 From:  Cemortan_Tudor
8665.189 
Hi Michael !
is it possible to attach moi-html to chrome to have futures like object explorer/building html ?
or other ways to debug

EDITED: 23 Jul 2020 by CEMORTAN_TUDOR

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

Previous
Next
 From:  Michael Gibson
8665.190 In reply to 8665.189 
Hi Tudor,

re:
> Hi Michael !
> is it possible to attach moi-html to chrome to have futures like object explorer/building html ?
> or other ways to debug

No, not currently. In the future I want to have a script debugger in MoI, it will involve a lot of work to make that happen though.

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

Message 8665.191 deleted 27 Jul 2020 by CEMORTAN_TUDOR

Previous
Next
 From:  Cemortan_Tudor
8665.192 
Hi Michael !
I think this should rise an error
createPoint(moi.vectorMath.add(obj.getStartPt(), scaleVector(obj.evaluateTangent(obj.domainMin), -1))).commit() - correct state
createPoint(moi.vectorMath.add(obj.getStartPt(), scaleVector(obj.evaluateTangent(obj.domainMin)),-1)).commit() - should rise -> it creates an null point

function scaleVector(v, factor) ... return moi.vectorMath.createPoint(x,y,z)
- Tudor -
  Reply Reply More Options
Post Options
Reply as PM Reply as PM
Print Print
Mark as unread Mark as unread
Relationship Relationship
IP Logged

Previous
Next
 From:  Cemortan_Tudor
8665.193 
Hi Michael !
I'm working a script & I wanna optimize it ! it uses a lot of moi.vectorMath.add()
wanna ask what's the math behind that function ? mb will improve runtime (not to call internals todo math operations )
- Tudor -
  Reply Reply More Options
Post Options
Reply as PM Reply as PM
Print Print
Mark as unread Mark as unread
Relationship Relationship
IP Logged

Previous
Next
 From:  Michael Gibson
8665.194 In reply to 8665.193 
Hi Tudor,

re:
> it uses a lot of moi.vectorMath.add()
> wanna ask what's the math behind that function ?

Like this:

var PtA, PtB, Result;

<......>

Result.x = PtA.x + PtB.x;
Result.y = PtA.y + PtB.y;
Result.z = PtA.z + PtB.z;


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

Reply to All Reply to All

 

 
Show messages:  1-14  …  115-134  135-154  155-174  175-194  195-214  215-234  235-254  …  355-372