V2 beta Jun-23-2009 available now
 1-10  11-30  31-44

Previous
Next
 From:  Michael Gibson
2711.11 In reply to 2711.10 
Hi Micha, re: mesh Rhino NURBS and bring back into Rhino with the same layers.

> Maybe an option could be implemented that allow to
> save styles as mesh names (without joining meshes
> with the same name) and at Rhino a script move the
> meshes back to the original layers?

I think it should be possible to handle this part by a script right now in MoI.

For example, if you set up the following script on a keyboard shortcut:

script: /* Set object name as style name + num */ var objs = moi.geometryDatabase.getObjects(); var styles = moi.geometryDatabase.getObjectStyles(); for ( var i = 0; i < objs.length; ++i ) { var obj = objs.item(i); obj.name = styles.item(obj.styleIndex).name + '_' + i; }

Then when you hit that shortcut key each object will get assigned a name of its associated style name, plus a unique increasing number, like BlueLayer_2, BlueLayer_3, etc...

The number is appended to make the names unique to avoid combination of mesh objects with identical names.

After you have run that script, then when you export to OBJ and read into Rhino, that information of what layer the mesh was originally on will stored in the object name, and some Rhino script code should probably be able to go through the meshes, strip off the ending _xxx which will then give it the layer name to place that object on.

Probably if you can clearly state the problem in the Rhino newsgroup someone will be able to help you with that part. Something like: "I have a bunch of mesh objects with layers stored in their names, like BlueLayer_1, BlueLayer_2, OrangeLayer_5, etc... and I want to edit these objects to place them on the layer that is named in the object name, like assign BlueLayer_1 to the layer named "BlueLayer", etc...


You can incorporate that same MoI script above to be a built in part of your batch conversion script if you want, just after the opening of the model file. Here is more readable version of it for putting in a text file rather than in a single-line keyboard shortcut:

code:
// Set object names to be their Style name + unique number.
var objs = moi.geometryDatabase.getObjects();
var styles = moi.geometryDatabase.getObjectStyles();
for ( var i = 0; i < objs.length; ++i )
{
       var obj = objs.item(i);
       obj.name = styles.item(obj.styleIndex).name + '_' + i;
}




- 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
2711.12 In reply to 2711.4 
Hi Danny,

> Just one thing I couldn't get to work, that's the 'Rotate with
> middle button' option, when selecting this option, the middle,
> as well as the RMB pan only, in 3D view, no rotation at all,

Thanks for reporting this - it looks like that's a bug when the 3D view is set to be parallel rather than perspective.

That's probably a lingering bug where some things had assumed that a parallel view was always an ortho-plan one, since in MoI v1 that was the case.

It should be easy to tune up, I'll take a look.

- 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:  WillBellJr
2711.13 
Michael, I just had to chime back in and say that MoI is an absolute pleasure to work with now that I can assign my surfaces and have them xfer over to my other apps!

I'm also loving the browser and how I can select, hide and show things - hella powerful compared to v1, it just all ties in so nicely now having the browser along with the surface assignment features.

At one point I was thinking to myself that it felt like I was working in Silo or a polygon modeler but with the pleasure of NURBS!



The only thing I was sorely missing at this point and I'd be really nice if you could get a solution in there is a headlight for the 3D view.

Spinning and selecting surfaces at times was hard because they'd fall into darkness. I know you've posted scripts to change the light direction and I'll have to look those up, especially now, but a constant light direction while spinning my objects would keep the comfort level for me on a level high.



At one point, I was also wishing for an additional selection mode.

I had an object that I had assigned globally to a surface name. But then I wanted to take just a few of the shared surfaces and assign them to yet another surface.


At first I tried to select just parts of the assembly using the right to left selection method but that would select the whole object.

Now having the ability to intricately assign surfaces, I was looking for a way to be able to quickly select only what's touched while going left to right and not the whole object.


I ultimately had to break apart the object and using the right to left selection method, it was easier to select the larger surfaces and hide them leaving the smaller surfaces to reassign to the new surface defnition then join everything back together...


I think what would be really helpful is a way to select surfaces that cursor touches - I guess like a paint selection mode. Of course the opposite should be available - hold down [ctrl] and deselect whatever the cursor brushes across...



-Will
  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
2711.14 In reply to 2711.13 
Hi Will - I'm glad the surface assignments and scene browser are working
well for you! Hopefully that will save time.

Quick note re: headlight - yeah you can actually have a pointing-straight-forward
headlight in MoI if you want, if you set up a keyboard shortcut.

To do that, go to Options / Shortcut keys and add in a new entry. For the key
put in whatever you want, but maybe L would be a good choice to be short
for Light. Or whatever you will remember.

Then for the command part, paste in the following:
code:
script:/* Toggle between headlight and regular light directions */ var dir = moi.view.lightDirection; if ( dir.x == 1 && dir.y == 1 && dir.z == -1 ) { dir.set(0,1,0); } else { dir.set(1,1,-1); } moi.view.lightDirection = dir;

Then when you hit L you should have your headlight set up.

- 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:  BurrMan
2711.15 In reply to 2711.14 
I was just thinking of that last night. Good one.
  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
2711.16 
The script copier utility for this release.

You can download and run the attached ScriptCopier_Jun_23_2009.exe program, which will copy custom added scripts from your MoI v1 installation to the new beta's installation folder.

- 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
2711.17 In reply to 2711.7 
Hi Petr, it's great to hear from you, you've been away from the forum for a long time!

I'm not exactly sure if I'm following what you are talking about for Ctrl+Right-click though...

You wrote:
> for example (see first image), currently there is no
> difference between ctrl+left and ctrl+right on Lock
> icon of Curves item.

There will be a difference between them when you do a second ctrl+right click though. That will unlock everything because that is meant as an "exit from isolate".


> I would prefer the ctrl+right click led to unlocking
> all types but curves.

If I understand correctly though, that is sort of the opposite of what right-click is meant to do.

Right-click (either with Ctrl or not) is meant as an "isolate" function - which means that it will "activate" (either show if no Ctrl, or unlock if Ctrl is held) the item you clicked on and "deactivate" (either hide if no Ctrl or lock if Ctrl is held) everything else. If that item was already active, then it will activate everything, which allows for a kind of "exit from isolate" on a second click.

In the case that you are talking about, all the other items happen to already be locked when your item is isolated, so yes that does not have any difference between Ctrl+Left or Ctrl+Right, but that's the same behavior as regular right-click without Ctrl.

For example if you have all styles hidden and you now right-click on one of them, just that one will turn on which happens to be the same as if you left-clicked for that case since everything else is already in the state that isolates that object.


If you want to get all things unlocked except for curves, the way you can do that is to Ctrl+right-click on curves until all things are unlocked which may take 2 clicks depending on your starting state, then use Ctrl+Left click to lock the curves item that you are on.


Basically the right-click set of actions whether Ctrl is down or not are meant to either activate the current item, or to re-activate all items. So in either case it is going to be activating that current item and not de-activating it. The method that you are talking about would be like deactivating that item rather than "isolating" it as the only active item...


Maybe this will make a little more sense: populate the styles section with all eyes. Now hold down Ctrl and right-click on one of them. You'll see here that everything else other than what you clicked on will become locked - that's the "isolate lock" - the item you picked is now the only unlocked one and everything else is locked. When you are done working on that isolated item, you can then repeat the same click on it and everything else will be activated again.



Please let me know if this does not make sense though, it's a fairly subtle area and maybe I did not understand what you were getting at.

- 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
2711.18 In reply to 2711.7 
Hi Petr, also here is an illustration of how the right-click is set up, this may be clearer.

So in the following I am right-clicking on some items without Ctrl down. As you can see this produces an "isolate" of the item that is clicked on where it becomes the only active (visible) item and all other things deactivated (hidden). Then notice the final click - if you right-click on an item that is already isolated, everything will reset:



So now here I am repeating the same sequence but instead holding down Ctrl. You can see that the action is the same, except it applies Unlocked / Locked as what is meant by Activated / Deactivated:



So that's basically what the right-click is mean for, either with Ctrl or not, Ctrl just applies it as locking/unlocking things rather than hiding/showing. But the basic mechanism to "isolate" the item being clicked is the same.

- 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:  tyglik
2711.19 In reply to 2711.17 
Hi Michael,

>> Please let me know if this does not make sense though, it's a fairly subtle area

No, it does perfect sense! Basically, it is exactly the same behaviour like for batch processing of snap menu, isn't it? I think you understood me very well. What I was talking about was related to the case and only the case in which ALL items are locked or hidden or locked&hidden. But I can see it now. It would make things somewhat complicated. Like you wrote- ""right-click (either with Ctrl or not) "activate" (either show if no Ctrl, or unlock if Ctrl is held) the item you clicked on and "deactivate" (either hide if no Ctrl or lock if Ctrl is held) everything else. If that item was already active, then it will activate everything"". -It means that only the state of item being clicked is taken into account and not the state of other items when deciding whether making the isolation or "exiting from isolate".


>> If you want to get all things unlocked except for curves,
>> the way you can do that is to Ctrl+right-click on curves until
>> all things are unlocked which may take 2 clicks depending on your
>> starting state, then use Ctrl+Left click to lock the curves item that you are on.

Basically yes. Except the state of curve(s) created after setting "starting state" - they will be locked after all. In the case I was talking about that I would prefer there will be both locked and unlocked curves (and unlocked everything else).

Petr
  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
2711.20 In reply to 2711.19 
Hi Petr,

> Basically, it is exactly the same behaviour like for batch
> processing of snap menu, isn't it?

Yup, it's meant to follow that same model.

The nice thing about that model is that it kind of serves 2 purposes with the same mechanism - one is to make that isolate function to be able to get to that "only show this one category" state with just a single click (like in the screencap above).

Then the other use is just as a general shortcut for displaying all things - if you have a mixed state with some things on and some things off, you can do 2 right-clicks on any item to show them all.

Yeah, I hesitate to make additional behavior for other cases... If it gets too complicated with different behavior for special cases it will probably get more difficult to use in a natural way.


> It means that only the state of item being clicked is
> taken into account and not the state of other items when
> deciding whether making the isolation or "exiting from isolate".

What it actually does for this, is that it always first tries to isolate the item, but it keeps track of what was done in order to get to the isolated state.

If there were no changes performed during the isolation, then it knows that item was already isolated and it will do the "exit from isolate" operation instead.

So the state of other objects is actually taken into account though, since the process of isolating an object does mean to deactivate other objects. When all other objects were already deactivated, that's when "exit from isolate" happens.


There is also now a slightly different kind of isolate available by right-click on the Edit/Hide or Edit/Lock buttons on the side pane rather than in the Scene browser. Those isolates actually store a snapshot of the state of all objects when you perform the isolate (which in this case is targeted by selection rather than by style or type as in the scene browser), so that when you exit it the previous state, including mixtures of some hidden, some visible, etc... is restored rather than having all things turned on as with the scene browser one.


- 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:  niko (NICKP100)
2711.21 In reply to 2711.20 
Awesome michael.
Any word on sweeps?
I believe you mentioned that they would be fixed on this beta if I'm not mistaken.

Thanks in advance.
  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
2711.22 In reply to 2711.21 
Hi niko,

> I believe you mentioned that they would be fixed
> on this beta if I'm not mistaken.

Nope, nothing on sweeps yet - the plan for those is to have some work done on those as the very last thing for the last beta. This one wasn't quite the very last beta yet.

- 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
2711.23 
A little demo of what the new "Align to surface" option in Array curve can do now.

Here is a curve that has been projected on to a surface, and a cylinder that has been drawn aligned to the surface normal at the start of the curve:



With the regular array curve, you can replicate that cylinder along the curve, but it will have a general gradual rotation applied to it, which will not necessarily keep it aligned with the surface normal at all points:



Notice there especially towards the end, it is not very close at all to the surface normal anymore, it just does not know anything about the surface so it does not take it specifically into account.

However, there is now a new "Align to surface" button in the options for array curve, here:




If you push that, you will be able to pick a surface and that will inform array curve that you want to maintain alignment to the surface normal of that surface. When this is engaged, array curve will incorporate an additional rotation into each array instance, to keep it relative to the surface normal at that point, to get this result:




To have everything in the final result aligned to follow right along the surface normal, you do need to have the initial item already placed in alignment to the surface normal at the starting point of the array though. In the future at some point it would probably be good to have a sort of "auto place" mechanism for this similar to the auto-place mode for sweeps, so that you could have an initial object located flat in world coordinates and have it moved into place for you.

- 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:  WillBellJr
2711.24 
Fantastic work, Michael!

-Will
  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:  Marc (TELLIER)
2711.25 
There a lot of stuff here, Great work!


I really like the offset capping feature!

I've noticed that if you subtract from an object of a different style, the object will have that different style in the new face(s) generated.

Is there a way that object would always keep the original style, the first operand in Booleans?

Marc
  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
2711.26 In reply to 2711.25 
Hi Marc,

> I've noticed that if you subtract from an object of a
> different style, the object will have that different style
> in the new face(s) generated.

Yup, that's actually a feature that took quite a bit of work to achieve! :)

In that case, the faces that are created are not really completely new, they come from trimming faces of the operands.

Anytime that there is this kind of ancestor relationship where the face can be traced back to its source, the style of the ancestor face is maintained.

The reason why that is good is it allows for things like this - here I have a little knob that I want to array and cut out of a larger piece:



If I know in advance that I want the knob cutouts to have a different render material than the slab body, then I can at this point before the boolean assign the knob to have a particular style of "Knob" or whatever, and then after I do the array that style will replicate to the copies, and then after I do the boolean with the arrayed pieces the style will again be maintained on the fragments of the knobs.

So now there is not any further work to be done for assigning styles to all those little bits - because the styles propogated through the various operations including booleans, just setting up the one style initially let me avoid having to try to do it later to all the numerous little fragments.


Anyway, that's why it is set up with that method.


This is a bit of an unusual function for CAD modelers, many CAD systems are often more rigidly limited to only allow a single style for an entire solid and not have the ability to have different styles for individual faces of a solid. So it may be kind of different from what you are used to because of that.

I've thought about making some option that you could set to change how this worked and impose a "one style for final result" limit on the booleans though. I'll take a look at adding that in for the next beta.

- Michael
Attachments:

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

Previous
Next
 From:  Frenchy Pilou (PILOU)
2711.27 In reply to 2711.26 
Objectives lens targets revealed :)
Fog is disappearing bit by bit for me :)
---
Pilou
Is beautiful that please without concept!
My Gallery
  Reply Reply More Options
Post Options
Reply as PM Reply as PM
Print Print
Mark as unread Mark as unread
Relationship Relationship
IP Logged

Previous
Next
 From:  Colin
2711.28 In reply to 2711.23 
Hi Michael,

Congrats on another great Beta.

This new feature of "Align to Surface" will be a big winner with those using MoI for jewellery designs.
The laying out of stones onto a rings curved surface was always one of those jobs I'd dread.
Looking forward to trying this out & seeing how it all goes.

regards Colin
  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
2711.29 In reply to 2711.28 
Hi Colin, thanks!

Yes, I was hoping that the Align to Surface function would help out with jewelry stuff, I have heard from people before that they needed that function.

The only trick with it is that you will need to make the initial starting object to be positioned to be aligned with the surface normal. Then with this new option the replicated copies will all be aligned to the normal at each of their locations.

- 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:  Marc (TELLIER)
2711.30 In reply to 2711.26 
Hi Michael, this makes much sense and is indeed quite handy!!

Recently I didn't do much rendering stuff, just line data from solids so I guess it's more 'cad' oriented
What's tricky is that I do not realize it right away, some parts are just left floating when I try to hide styles later on.

I guess I just have to remember to sort colors before doing boole laundry!

Maybe a inline operation ticker or an choice in the options panel would be nice. (The .Ini file would be a bit deep to switch)


Marc
  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-10  11-30  31-44