curve array enhancement
 1-12  13-32  33-52

Previous
Next
 From:  Michael Gibson
2626.13 In reply to 2626.12 
Hi Pilou,

> but for a big?

Well, for example it took me 12 seconds, so maybe with a curve 10 times as big it will take 120 seconds.

If you only need to do this occasionally, then that is not a big problem.


> And cool that in the next beta we can see only start / end of curves points

Oops, sorry I did not explain it clearly - it is not that you will only be able to see start/end control points, it is that you will be able to have a script that will create point objects at the start or end of a curve. That is a point object like Draw curve / More / Point, not control points.

Control points will still work the same as 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:  Frenchy Pilou (PILOU)
2626.14 In reply to 2626.13 
< If you only need to do this occasionally, then that is not a big problem
yes
but if a script can do the same maybe that's better :)
Draw a line between an ordered succession of points

< you will be able to have a script that will create point objects at the start or end of a curve
yes : what append when 2 curves have a common start/ end vertex between them?
points created are part of each curves or "double points" become one point?
  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
2626.15 In reply to 2626.14 
Hi Pilou,

> but if a script can do the same maybe that's better :)
> Draw a line between an ordered succession of points

If you have them saved to a text file in their ordered sequence, then I think that Petr's "Import Point file" plugin is able to do that:
http://kyticka.webzdarma.cz/3d/moi/#ImportPointFile


> points created are part of each curves or "double points" become one point?

You would get double points unless you wrote the script to detect this situation.


But again - if you just start out with a point object initially and replicate that around the curve rather than vertical lines, there is no need for creating any more points, they will be in place already.

So I'd recommend doing that, since it is both easier and works right now as well..

- 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)
2626.16 In reply to 2626.15 
I will try these Peter plugs (import/export) for test the little problem above ;)
  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)
2626.17 In reply to 2626.16 
Works fine! So for more 20 points that is very easy :)

No problem but...
Something curious in the Save point text help file it's written
< In the dialog box, type a name for the file including some extension like .txt, .csv, .xyz; e.g. outline.txt

but there only the normal export file window so works fine in 3Dm ;)

and for the import point text help file it's written nothing
but import file window is .txt, .csv, .xyz and hopefully *.*

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:  Michael Gibson
2626.18 In reply to 2626.17 
Hi Pilou,

> Something curious in the Save point text help file it's written
> In the dialog box, type a name for the file including some extension
> like .txt, .csv, .xyz; e.g. outline.txt
> but there only the normal export file window so works fine in 3Dm ;)

Yes, that's not too unusual that with text files you will be allowed to type in many different extensions.

For example if you run notepad, you can enter any extension that you wish, including .3dm.

But it is not recommend that you do that, because a proper .3dm file is intended to be structured differently than a text file.

So doesn't seem like a problem!


> and for the import point text help file it's written nothing
> but import file window is .txt, .csv, .xyz and hopefully *.*

The extension is not so important - it is the contents of the file that is important, it should be a text file that contains numeric data, I think x,y,z data one point per line.

It is not unusual to have a .csv extension for a text file that contains "Comma Separated Values".

- 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)
2626.19 In reply to 2626.18 
in any case these 2 plugs are very useful for such little tricky things :)
  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)
2626.20 
It's a vicious little problem!
All the method works fine for a circle but not for an ellipse!
Because ellipse must be divided in equal arc elliptic of the size of the triangle!
And the Array / curve (ellipse-->polyline) seems don't make that!

And if you re scale the circle to an ellipse the triangle size is modify!

EDITED: 11 May 2009 by PILOU

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:  Michael Gibson
2626.21 In reply to 2626.20 
Hi Pilou, I guess you would need some specialized method to handle that...

- 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)
2626.22 In reply to 2626.21 
< some specialized method to handle that.
yes :)
length is good between the points (of the polyline) but the array curve don't manage the triangle over the polyline! ;)

EDITED: 11 May 2009 by PILOU

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)
2626.23 
So seems there is something wrong in the Array Curve function
Vertical works fine, obliques failed to follow the path along an ellipse
Ok I can make by hand but ...:)
  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
2626.24 In reply to 2626.23 
Hi Pilou,

> So seems there is something wrong in the Array Curve function

Can you please post an example model? Or is it one of the previous files you posted?

- 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:  rhodesy
2626.25 
Thanks for the link to the tank track post Michael, but im baffled to see how it works! Surely the straight line distance around the curved bit will be shorter than the distance between the points on the straight bit as I think MOI (correctly) calculates the length of the curve not the shortest distance between points. I was wondering if it was possible for MOI to have an extra method that uses the straight line method for its calculation? Im thinking it would be useful in curved planar glass wall construction where the glass is usually made up of consistent sized glass modules, or possibly more complex shapes like the Swiss Re building in London - that was where the quick triangle experiment came from. Im thinking the actual swiss re shaped glazing pattern would be pretty hard to achieve with moi at the moment but a more basic purely horizontal curving should be possible. This way it would be easier to work with a single unit (structure and glazing) that could be then instanced (when the time comes) along the curve, rather than having each piece slightly different. Of course how these join propperly would need to be carefully managed but by and large it would be a big time saver.

Cheers







  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
2626.26 In reply to 2626.25 
Hi Rob,

> Yes thanks for the link to the tank track post Michael, but im
> baffled to see how it works!

You know, I wasn't sure about that myself when I was looking over it again. I think that may have turned out well in that case just due to luck...

Because yeah you are right that array on curve goes by distance traveled along the curve, so polylines made in this way do not have equal length lines in them.

I guess by luck that previous one just did not happen to have much variation in the lengths just due to its regular curvature in the rounded areas.

So I suppose scratch that recommendation! :)


> I was wondering if it was possible for MOI to have an extra
> method that uses the straight line method for its calculation?

Generally something that is highly specialized like that would probably be some kind of plug-in rather than something that gets added to a fully general purpose function like the regular array curve...

The kind of thing you are talking about there just is not very general purpose - for example how would it behave when arraying a closed curve? What about when arraying a solid rather than a curve at all, etc...

When something only works on a very certain kind of geometry arrangement, that kind of brings out of the realm of the "general purpose" modeling toolset and more into a special focused kind of toolset.

With MoI, I'm still kind of in the phase of trying to make more progress in the "general purpose" toolset.

- 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)
2626.27 In reply to 2626.24 
A very simple example
Just one vertical + one Oblique = polyline A
The (1/4) ellipse = polyline (hand made after an array Curve Point / ellipse) with equal length
Array curve : that failed! (any position of the polyline A) it's the same for any forms except the verticals who are always good!


  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
2626.28 In reply to 2626.25 
Probably what I would imagine for that stuff would be some more targeted tools rather than the general array curve command.

Like a "construct polyline with equal line segments from curve" command. and then a "replicate object to polyline segments" command.

Those would probably give you more flexibility for different things, like possibly scaling objects to fit within each polyline segment, stuff like that which the general array curve does not do.

Right now I'm not sure when I would be able to work those kinds of tools into the schedule 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

Previous
Next
 From:  Michael Gibson
2626.29 In reply to 2626.27 
Hi Pilou -

> Array curve : that failed! <...>

Why do you consider it to have failed? It looks to have the proper result that array curve is intended to create...

The way array curve works is by moving and rotating an object as it travels along the curve.

For each new instance, it generates a point on the curve, and rotates the objects by the difference in tangent direction from the previous point to the current point.

That produces the result that you show there.

If something is failing, I'll need some more information on what you expected to get - I can't see any part that seems to be failing myself...

Certainly, it doesn't produce the result that Rob was asking for originally, but that is because that is not how Array curve works.

- 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)
2626.30 In reply to 2626.28 
Yes I understand that, but it's just funny that the function "works" for a volume and not for "2 lines" (for my point of view) :)
And yes I can make the little rotation missing by hand
  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
2626.31 In reply to 2626.29 
Hi Pilou, also note that the method that I recommended earlier just does not work right, for actually a couple of reasons (sorry I led you astray!).

One reason is that you'll need to get equal length line segments which is not necessarily easy to automatically generate.

Then the other is you need to arrange things such that the point used for each array instance along the polyline falls within the midpoints of the polyline rather than right at the juncture between 2 segments. That's because if it is at the juncture between segments there are 2 possible tangents for that point and any small deviation from one side to the other will use one of those 2 possible tangents.

That's another reason why this would probably work best as a special tool that copied things to line segments rather than using the general purpose array curve for it.

- 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
2626.32 In reply to 2626.30 
Hi Pilou,

> Yes I understand that, but it's just funny that the function
> "works" for a volume and not for "2 lines" (for my point of view) :)

For an open path curve like this, it works in an identical way for either one...

If you test with replicating a volume, just make sure it is in the same orientation as the line - for example your triangle line starts out at a slight angle so that it is aligned with the first line segment which is not exactly horizontal.

If you orient your volume in the same starting position, you should get an identical result with it as well.

If you forgot to have the same starting alignment, then certainly you will get a slight difference.

But I'm afraid that I confused things a lot more by posting that method which does not work, sorry! :)

- 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-12  13-32  33-52