Flatten curved surface? 1-20  21-30

 From: Dan (LICHENROCK) 31 Oct 2009  (1 of 30)
 Is it possible in MoI by some method, to flatten a curved surface? I am working on designs of shapes such as these with faceted faces formed by cylindrical curved surfaces: I would like to construct this type of design and similar by cutting the facet shape from flat stock, bending the shape and joining the individual facets at the edges. (I use clay slabs but the construction could work for paper, sheet metal, or any other material that comes in deformable sheet material.) The design is simple. I construct a curve in Right View, then extrude the curve along its XY axis, in order to create a cylindrical surface. Then in Top View use Circular Array around the Origin. Then select all surface objects and Trim them using the mutual trim option to construct a mitered/faceted form. After that I can add a top and bottom planar surface, join to create a solid, shell and fillet the edges. BUT, in order to construct the form, I need to flatten each unique surface in order to make a cutting template. Is this possible to do in MoI? I would not mind spending considerable time if I knew that it would work. I have tried several things without success. For example: If I start with a simple curve with a known length, in this example a 45° arc of a circle with a 10 unit radius: Since circumference = 2πr and 45° is ⅛ of 360°, the length of this arc before and after flattening should be 7.854 units. I tried to flatten the curved surface by viewing the surface on its edge and rotating the control points to be coplanar. This does produce a flat surface, but the length is not 7.854, rather it is 8.284 units. I know that I can approximate the form using thin polygonal flat surfaces. I construct the original nurbs curve ………., then array a series of points along the curve, connect those points with a Polyline, then Extrude and construct according to the original method as described above. With this approximation, the fewer points along the curve, the easier it is to rotate to a flat surface but the less accurate it is. The more control points, the greater the accuracy of the approximation but the more difficult and time consuming it is to rotate each polygonal segment to a flat surface. Thanks for any advice. -Dan

 From: BurrMan 31 Oct 2009  (2 of 30)
 3042.2 In reply to 3042.1 Regarding your shape you made, you really need to explore "Rail Revolve". :O One curve, One Polygon, Your object.

 From: Anis 31 Oct 2009  (3 of 30)
 3042.3 In reply to 3042.1 Hi Dan, I believe Michael have a plan like "flatten surface" in Rhino in the feature. But today you have to use another program to help you. One of them is : www.tamasoft.co.jp/pepakura-en/ As I know there are another software that also can do that, but I forgot the name :( EDIT : Here it is http://www.laminadesign.com Good Luck ! EDITED: 31 Oct 2009 by ANIS

 From: BurrMan 31 Oct 2009  (4 of 30)
 3042.4 In reply to 3042.3 You can also use this script in MoI to get a curves length: http://kyticka.webzdarma.cz/3d/moi/#CurveLength

 From: BurrMan 31 Oct 2009  (5 of 30)
 3042.5 In reply to 3042.4 I was wondering if this worked. Since your shapes are all non organic. The only thing I'm not sure of with this file is the "width" of the unfolded leaf. I can try to cut them out to see if it refolds....Maybe if your interested you could follow this up and if it needs one more op, we should be able to figure it out. EDITED: 19 Jun 2012 by BURRMAN

 From: BurrMan 31 Oct 2009  (6 of 30)
 3042.6 In reply to 3042.5 Yeah wait. I missed the width step. I'll see if I can figure it out.

 From: Michael Gibson 31 Oct 2009  (7 of 30)
 3042.7 In reply to 3042.3 Hi Anis, > I believe Michael have a plan like "flatten surface" in > Rhino in the feature. Actually I do not currently have any plans for this - it is just not an area that I have a lot of experience in. - Michael

 From: Michael Gibson 31 Oct 2009  (8 of 30)
 3042.8 In reply to 3042.1 Hi Dan, > Is it possible in MoI by some method, to flatten a curved surface? No, there are not any functions built in to MoI to do that. Probably your best bet for that purpose would be to take your data into Rhino, and then there is a command in Rhino called UnrollSrf that can do what you want over there. That unrolling process is not going to be very feasible to attempt to do manually, moving control points is just not going to produce the right result, the process for unrolling needs to look more directly at the lengths of the pieces being unrolled and there is not something like a 1 to 1 relationship where moving a control point by one distance means that a curve's length (as traveled along the curve) gets altered by the same amount. Like Anis mentions above, there also some other options: Lamina Design: http://www.laminadesign.com Pepakura Designer: http://www.tamasoft.co.jp/pepakura-en/ Those programs produce a flattened layout of polygonal data. But if you have a developable surface that you want to cut out of stock and then bend into shape, Rhino's UnrollSrf command would be the way to go with that. MoI itself just does not have any specialized focus on producing or flattening developable surfaces, you will need to use a program that is more focused in these particular areas to do those kinds of things. - Michael

 From: BurrMan 31 Oct 2009  (9 of 30)
 3042.9 In reply to 3042.8 Yeah, I was off base with that post for sure :O

 From: Dan (LICHENROCK) 31 Oct 2009  (10 of 30)
 Thanks very much to everyone for your help and suggestions. Anis, I just spent some time looking at those links you supplied to Pepakura and Lamina Design. I could have LOTS of fun with either of those programs! Ultimately I may pick up an application that is designed for that specific purpose of flattening surfaces. Still, MoI is the best and I am always surprised by what CAN be done with it. Burrman, thanks for the attempt. I’m smiling because you probably approached the problem as I did. It really looked like a simple exercise. In real life it is easy to flatten things. Then I found myself scratching my head and stumped. That script for Curve Length will be very useful to me for this project and others, thanks. As for now because I am impatient, once I am satisfied with a design, I will go back and convert the original curve to a Polyline as I described in the first post. That script will allow me to use fewer points (and fewer rotation operations = less time), because I can Scale 1D the result to the correct length. Michael, MoI just keeps getting better, Thanks - Dan

 From: BurrMan 31 Oct 2009  (11 of 30)
 3042.11 In reply to 3042.10 Hi Dan, Yeah, I always fool around with these and try to figure out how it is being done, but never get there. Here's a file of the process I used that also includes a surface from Rhino that unrolled the same solid. I failed with mine to match it. Though when researching this type of thing, I always find it being asked, and many answers are "it is not precise". Even Rhino's output is off a bit from the actual edge. MoI's edge = 18.7470243394886 Rhino's unrolled edge = 18.7500218509622 I was stuck on developing the "Hieght" properley to have the curve edge be the same as the solids. AN interesting thing I found was that a Conic Curve is created from the 3 points. I was trying to fool around with how to staighten that out to flat. Usually I have found though, that when Michael tells me I beating my head on a tree.... I have a headache at the end of the day! AND I DONT KNOW WHY :O EDITED: 19 Jun 2012 by BURRMAN

 From: BurrMan 1 Nov 2009  (12 of 30)
 3042.12 In reply to 3042.11 Hi Michael, I'm fooling around with the Conic Curve and was wondering if there was an answer readily at hand, or it is more complex. Is there a way to reverse engineer the rho value? Also, when I have a curve like this, can you present a method for me to find the "Highest point" of the curve perp to the 2 endpoints? On this simple curve, if I draw a line from midpoint to the top point, this gives it to me, but if the curve was made up of several different points? EDITED: 19 Jun 2012 by BURRMAN

 From: Michael Gibson 1 Nov 2009  (13 of 30)
 3042.13 In reply to 3042.12 Hi Burr, > Is there a way to reverse engineer the rho value? You mean recover the rho value for an existing conic? Yeah, I guess that is possible by drawing a new conic and snapping all the points including using the "through point" for the final one by picking a point rather than typing in a rho. When you move the mouse around to pick a "through point", the rho value in the UI will update so with all points snapped on to an existing conic the UI should show the proper rho value there. Make sure you turn on control points for the conic you want to snap on to so that you can place the initial 3 points on to the 3 control points. Let me know if the above is not clear. > Also, when I have a curve like this, can you present a > method for me to find the "Highest point" of the curve > perp to the 2 endpoints? On this simple curve, if I draw a > line from midpoint to the top point, this gives it to me, but > if the curve was made up of several different points? I'm not sure if I completely understand, but it sounds like you probably want to use a perp/perp snap to find that spot. First drag out a construction line for what you want to be perpendicular from, which it sounds like you want to be between the 2 endpoints. Then drag another construction line (or you can also draw a line), starting somewhere relatively near the spot you're looking for, and then there will be a perp/perp snap that will be calculated to find a line of shared perpendicular between the base line and the curve which I think is what you want. Here's what it looks like in action, here I'm using the Draw curve / More / Point command to place a point in that spot: So notice that the one that you want is the one that reads "Perp/Perp" for a line of shared perpendicular between 2 curves. It will read that on both the target point and the base point. This is a snap (along with Tan/Tan) that doesn't just snap to one point but also moves the previous point as well. Let me know if that does not make sense. Also another method you could use is to orient your construction plane and then use the BoundingBox command. - Michael Attachments:

 From: Michael Gibson 1 Nov 2009  (14 of 30)
 3042.14 In reply to 3042.13 Hi Burr, just another example - you can generally use Perp/Perp to find things like closest or furthest points between things. Here for example I'm drawing a line and using it to find the shortest line available between these 2 curves: To use it you need to have picked the initial point somewhere in the general neighborhood of the actual spot, something like within 100 pixels or so. Then there will be a target snap location calculated on the second curve, and if you move your mouse to target that one, it will get the special "Perp/Perp" snap. Usually the perp/perp target point is just a little bit past the "single perp" one. There will usually be several different snap points available in that area, so move your mouse a bit slowly around there to see all the different ones. The single perp one is the perpendicular from the initial point location dropped to the target curve. The double perp/perp one is the shared perpendicular between 2 curves. There is also a Tan/Tan that works in the same way for tangents. - Michael Attachments:

 From: BurrMan 1 Nov 2009  (15 of 30)

 From: Michael Gibson 1 Nov 2009  (16 of 30)
 3042.16 In reply to 3042.15 Hi Burr, > Do all conic curves have only those three points. Well, all ones made with the conic tool do... It's possible to have a curve that is a "conic section" that has more points in it though, for things like an ellipse or a circle. But those are actually the equivalent of several 3-point conic beziers that are glued together into a longer curve. Also it is possible to have a conic sections that are defined by other ways than how the conic command happens to do it, so there is not necessarily an automatic Rho value to associate with every kind of possible conic curve, because the Rho only applies to the particular construction method of the "Conic" command. I don't think it is a thing that is universal that applies to every possible conic section if that is what you were thinking. There is something else called "eccentricity" that is like that - that is an inherent property of all conic sections. But that is different than the Rho value. > I was more asking as a means to understand it's value and derivation. I think it was historically used as a convenient way to describe a curve in compact form for use in airfoil tables or something like that. If you want some more technical information, you could try The NURBS Book, 2nd edition, Les Piegl and Wayne Tiller, pg. 294, "Conics and Circles". But basically it is just a way to control a shape by manipulating a parameter value. If Rho < 0.5, the shape is an ellipse If Rho = 0.5, the shape is a parabola If Rho> 0.5 and < 1.0 the shape is a hyperbola > and the value itself seems "relative" as a 0 to 1 ratio of "Whatever"? If I remember right, it actually ends up as a percentage of the distance from the midpoint between the 2 endpoints being 0.0, and the point at the corner being 1.0. That's for a location of where the curve will pass through. So for example say you've got these 3 shoulder points, where the distance from the corner to the line between the ends is 10 units like this: If you make a conic there and type in 0.25 for the Rho value, that will place the high point of the curve at 25% of the distance, so in this case the high point of the curve will be at 2.5 units tall (25% of 10 units), like this: Does that help? Note that this also involves setting a special "weight" value on the control points of the curves to get the particular conic section shape. Just because you see any curve that happens to be made up of 3 points does not necessarily mean it is a conic section curve. - Michael Attachments:

 From: Michael Gibson 1 Nov 2009  (17 of 30)
 3042.17 In reply to 3042.16 Hi Burr, Actually now that I think about it, this part that I wrote: > Just because you see any curve that happens to be > made up of 3 points does not necessarily mean it is a > conic section curve. is wrong I guess, because if you have a 3 point curve, that makes it a quadratic bezier and that will have the shape of a parabola I guess even if it does not have weights set. Something like that anyway... - Michael