curve array enhancement
 1-20  21-40  41-52

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

Previous
Next
 From:  Frenchy Pilou (PILOU)
2626.33 In reply to 2626.31 
All that can't be easy solved by "Instancing" a volume array / curve then replace at the end these volume by the "2 lines"?

Instance of objects is not projected in early Moi version?
  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.34 In reply to 2626.33 
Hi Pilou,

> All that can't be easy solved by "Instancing" a volume array /
> curve then replace at the end these volume by the "2 lines"?

No, not if you want things to touch each other exactly.

Making an arrangement where items sort of "tile" to fit in available space is a rather different problem than just regular "instancing".

To make things fit and touch each other, you can't just replace one object with any other object, things need to be of specific sizes.


> Instance of objects is not projected in early Moi version?

I'm not really sure when. Definitely it won't be in v2 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:  rhodesy
2626.35 
Can't wait for instances...........!

Anyway I guess it would work manually by placing circles with a predetemined radius at each intersection like this:





Then just draw each line to each intersection. This would achieve the same result. Currently i think the MOI intersection snap could be improved: when I try and rotate the line in my previous post from one end and using the far end of the line as the rotation point when I intersect the elipse im wanting to snap to the intersect just runs up and down the elipse line rather than just snapping firm to where the official intersection hits it i.e. when the endpoint of the line hits the curve as it is rotated. Could this be improved?

Cheers

EDIT: If moi could do the circle technique (IE straight line distance between points where the circle of radius x intersects the line) internally like it does the number along the curve at the moment, then that would help to get the right base size for the initial element, at the moment that would be very much trial and error and not very 'CAD' like.

EDITED: 12 May 2009 by RHODESY


  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.36 
A solution can be :)
Array curve a point to the ellipse
--> length base curvy triangle
create a cone 3D with radius = 1/2 length base triangle
Array curve cone to the ellipse
Extrude ellipse
Trim cones with extruded ellipse
et voilĂ 
triangular surfaces arc-elliptic are equal ! ;)
If you want real straight triangular : polylining the 3 vertex of the triangular surface arc-elliptic :)
  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.37 In reply to 2626.35 
Hi Rob - currently intersection will not find that point you are talking about because it is not an intersection between existing geometry in the scene - it would be an intersection between a circle and that point. But there is no such circle in the scene currently, if I understand the situation you are referring to.

But maybe I don't understand exactly what you are asking about there.

I think it could be possible for me to add in a kind of "implicit circle" though.

There is actually such a thing already implemented in v2 for distance constraint.

If you activate distance constraint while drawing a polyline for example (just type in a distance value and hit enter), then you will get intersection points for a circle of that radius.

Is that the kind of thing that you're talking about getting for Rotate as well?


> EDIT: If moi could do the circle technique (IE straight line
> distance between points where the circle of radius x intersects
> the line)

If I understand correctly, it needs a much different kind of solving technique to get equally spaced "chord distances" in the result rather than distance as traveled along the curve.

I believe it will need to be calculated with a kind of iterative solving technique, not one that just divides distances in a simple and even method like the current array curve does.

I would think it would be a specialized command, like "Create uniform polyline from curve". It's trying to solve a rather different problem than what Array curve is intended to do.

- 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.38 
My Methode seen above :)
Very easy :)
Mirrors are not necessary if you make the complete ellipse in one pass ;)
Surfaces triangular arc-elliptic are more natural than straight triangles surfaces !

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.39 In reply to 2626.38 
Hi Pilou,

> My Methode seen above :)

Looks like a good method for the purposes of visualization!

But I think for the purposes of architectural design for construction, there will be some desire to have a very regular and uniform shape, where each triangle touches the other one at the same height above the ellipse.

I'm not sure that your method will produce that degree of regularity but it looks like a good one to at least get something that looks close to the desired output.

- 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.40 In reply to 2626.39 
Precision is given by a point Array curve/ Ellipse -->radius base of the cone 3D
so 2 decimal point after unity ;)
  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-20  21-40  41-52