Punch holes  1-15  16-35  36-55  56-75  76-85

Previous
Next
 From:  Michael Gibson
2749.36 In reply to 2749.1 
Hi Angelo, it occured to me this morning that this process of moving slices into their precise target location can be mostly automated pretty easily.

I've attached a custom plug-in command here called MoveSliceToPoint.js which can be used for this.

To install it, download it and copy it into the \commands sub-folder inside of the MoI 2.0 beta's main installation folder (it may also work with v1, I have not tested it there though). Then set up a keyboard shortcut and for the command put in: MoveSliceToPoint

Now when you activate that keyboard shortcut it will launch the command.


This command expects a setup of point objects like this:




You can draw a point object using Draw curve / More / Point, and then make a duplicate of it at your desired spacing using Transform / Array / Dir, use a distance constraint by using the "d" field in the bottom toolbar to control the spacing for the array.

It assumes that the point object closest to 0,0,0 is the starting point that is on the plane of the objects, and the point object furthest from 0,0,0 is the target point.

To use the command, select the outermost curve (the one that should be moved to the end), like this:




And then press the keyboard shortcut to launch the command. It will move the selected object to the furthest target point, and then remove that target point:




So because that target point was removed, now it is all set up to select the next curve and repeat the command by a right-click to move it into place, and so forth. So you can rapidly move a bunch of slices into place with this method by just by repeated select + right click, select + right click, etc...


This should help to greatly speed up the arrangement of slices like this, here is a screencap of it in action:



I hope this may help out the next time you have to arrange a large number of slices like this.

- Michael

EDITED: 6 Jul 2009 by MICHAEL GIBSON


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

Previous
Next
 From:  Frenchy Pilou (PILOU)
2749.37 In reply to 2749.36 
Does it possible to have a script who make that?
of course curves lines given beeing as on your drawing in order of size ;)

In sketchup i have made a script (my first ruby script with some helps :) who can make that :)
http://forums.sketchucation.com/viewtopic.php?f=180&t=20313&start=0&st=0&sk=t&sd=a

EDITED: 6 Jul 2009 by PILOU

  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
2749.38 In reply to 2749.37 
If this is going to be done with automation then it is not a 3d operation. It would be done in 2d. Getting a "point" where the wire intersects each side of the plexiglass would be what is required. One point = Drill. Where there is a diaganol cut, the 2 points for each side would be connected then the "slot" would be created with a profile cut. If this was my stategy, I would ask if there was a script to connect 2 points with a line to speed this part of the process up. So in summary:

Can the Isect command place a point where the wire enters and exits the solid?

Can I automatically connect 2 points?

These along with the previous "spacing script" Michael made would create this part "as is".

I would then bring that file into my cam package and drill all points, then profile cut all the line entities.
  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
2749.39 In reply to 2749.37 
Hi Pilou,

> Does it possible to have a script who make that?

Sorry, I don't understand.... What is it that you want the script to make?

If you want to move slices into different parallel locations, then yes, that's what the script that I just posted can be used for.

- 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:  angven (ANGELO)
2749.40 In reply to 2749.36 
Hi Michael, superb this plugin!
What happens if I have the slices not all near the starting point and beneath the target point?
Let's say if I have a compressed target space? A space smaller them the space occupied by the unarranged slices?





(I'm thinking to put some mention to MOI, or at least at you, on my exhibit catalog)

Angelo
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)
2749.41 In reply to 2749.39 
< What is it that you want the script to make?
just about that ;)
curves ordered on a line as like your animation, because here you have 10 lines but if 500? :)
(like in a map of terrain levels)

EDITED: 6 Jul 2009 by PILOU

  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:  angven (ANGELO)
2749.42 In reply to 2749.34 
Hi Grendel, thanks for this suggestion. I'm trying it right now. Perhaps I'll shave some slices before.

tx
Angelo
  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
2749.43 In reply to 2749.38 
Hi Burr,

> Can the Isect command place a point where the wire enters and exits the solid?

Yup, the Isect command will generate points where a curve intersects with the surface skin of a solid, so for instance with this curve and solid:




If you select them both and run Construct / Curve / Isect, you will get these 2 points as the result:




> Can I automatically connect 2 points?

It would be possible to make a script that would do this, let me know if you want me to cook one 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
2749.44 In reply to 2749.38 
Well a quick test showed I could use the trim command and just remove everything but the inner piece of wire. Left with all my profile cuts or drill points.
  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
2749.45 In reply to 2749.43 
>>>It would be possible to make a script that would do this, let me know if you want me to cook one up.


Well I have thought I wanted one of these but was trying to think how it would handle a multiple selection. If you think it could deal with something like I described faster than just using the line tool with end snaps, it may be very handy to start using points more as a construction tool.
  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
2749.46 In reply to 2749.41 
Hi Pilou,

> curves ordered on a line as like your animation, because here you have
> 10 lines but if 500? :)
> (like in a map of terrain levels)

Yes, that's actually the entire purpose of that script, to make it easier to handle a large number of items such as 500 lines.

You just use the same process shown there, select one + right click and repeat.

That's what is nice about that script, it allows you to arrange items with only 2 clicks in the same area of the screen for placing each one, it's much much faster than moving the mouse around to snap on to the base and target point for each item...

As you can see from the screencap, it only takes about 1 second (maybe even less) to place each item with this script helping you, so placing 500 items would be roughly 500 seconds of work = roughly 8 minutes of work instead of much longer than that...

I don't think there is much possibility for a script to automatically determine which pieces are supposed to go to which slots without selecting them though, that would require some kind of advanced pattern recognition or artifical intelligence for the script to analyze the curves and try and understand which one was supposed to be the next in the sequence. Sometimes there may be kind of "islands" where there are more than 1 thing that should go to the same slot as well.

The script is not meant to make 500 curves instantly go into place with one single click, you still have guide the process with selection but the script will help speed things up quite a lot compared to doing all the manual transformation steps that would otherwise be required.

Pilou, you're just too lazy and don't want to do any work at all! :)

- 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
2749.47 In reply to 2749.45 
Hi Burr, yeah for just connecting 2 points just the line tool with 2 end snaps is already pretty quick for that.

An automated connection would start to become more useful if it was not just a "connect 2 lines" command on its own (which is pretty easy though, I can cook that up for you if you want, just let me know) but rather if it was some final step built into a batch operation.

But yeah the more difficult part is for the script to decide what to do with more than 2 points. Should it make a polyline? Should it try to group them into sets of 2 points that are closest to each other? That may be something that would be set up for a particular script targeting a specific situation (where it could make a better decision about what to do specifically) and probably not a very general purpose tool...

- 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:  Frenchy Pilou (PILOU)
2749.48 In reply to 2749.46 
You right :)

We will always that the computer makes all the work :)
---
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:  Michael Gibson
2749.49 In reply to 2749.40 
Hi Angelo,

> What happens if I have the slices not all near the starting
> point and beneath the target point?

Well, it will be the same as if you used the "Move" command and used those 2 points as the base and target point for the Move.

Basically the distance between those 2 points is used as the distance to translate the curve.


> Let's say if I have a compressed target space? A space smaller them
> the space occupied by the unarranged slices?

Well, it's best if all the unarranged slices are on the same plane to start with, that makes it easy for the base point to be in that plane as well.

So that means all the unarranged slices would be at 0 distance between them already, so you can't get any smaller than that! :)

But you could adjust the points to have a different spacing in them, like do some scaling of different sections to compress or expand them. The script doesn't really care if the target points are evenly spaced or not, it just moves each slice to that furthest point location.

Please let me know if this doesn't make sense.

- 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
2749.50 In reply to 2749.40 
Hi Angelo, also one other note - if you have a series of planes and you want to compress them back into a single plane, you can do that by using the "flat" snap with the edit frame scaling grip from a side view like this:








Also if your planes are angled so you can't easily get to a side view you can also use Transform / Scale / Scale1D which will allow you to pick 2 points to define the flattening direction, then type in a scale factor of 0 to flatten in that direction.

- 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:  Frenchy Pilou (PILOU)
2749.51 In reply to 2749.50 
About the plug seems that curves and points can be anywhere and selected in any order ;)
---
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:  Michael Gibson
2749.52 In reply to 2749.51 
Hi Pilou,

> About the plug seems that curves and points can be
> anywhere and selected in any order ;)

Yes, that's true - but you will probably get hard to predict results with random placements.

The script is basically just a shortcut for doing a Transform/Move between the base point and target point.

Just as there are not any restrictions on where an object is located, or where the base or target points are in Transform/Move, there are similarly no limits for the script.

But to get the most expected behavior, you would probably want to have the curves stacked up in the same plane, and the base point located also in that same plane. That will make for a more predictable offset distance to be used for each one, just like Transform/Move can be easier to control if you snap the base point of a Transform/Move on to the object rather than way off in space somewhere.

- 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
2749.53 In reply to 2749.47 
I was trying to visualize a command that had a choice of polyline, curve throughpoint etc. with a "tolerance" setting. The tolerance being distance to next point to continue or stop, creating a chain. I have heard a few requests before for some kind of "connector" tool, so I know you have it in scope. I can get what I need now other ways.

Just poking around.

Thanks again.
  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
2749.54 In reply to 2749.53 
Hi Burr, that kind of sounds like the Import point file command that Petr made:

http://kyticka.webzdarma.cz/3d/moi/#ImportPointFile

I think that lets you build either a polyline, control point curve, or interpolated curve from the points read in. But I think it uses the points in the sequence they are found in the file and won't try to organize a big random set of them.

- 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
2749.55 In reply to 2749.54 
Well I created points for the file. (Much easier than trying the trim) I loaded the points save and load commands from petr. I had a question about its use if petr is looking in.

I was hoping that there was a tolerance setting that would help control the polyline creation. There is a "decimal places" setting and I am not sure how to use this or if it is intended for this result. Could you expound?

With regards to a connector script, the point cloud looks like this:




But from the top, it is this:





If I could connect only points that are .125 apart, the tolerance setting, then this would work.

I suppose it would have to apply to ANY other interest in connecting "points" or even "Segment ends". Kindof like the extend with a Limitation setting. (and also working on points).

Anyway, enough about this now from me. I will try trimming in smaller batches to get the result I am looking for.

Burr

EDITED: 19 Jun 2012 by BURRMAN

  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-15  16-35  36-55  56-75  76-85