Auto-suggest helps you quickly narrow down your search results by suggesting possible matches as you type.

Showing results for

- Navigation
- NX Design
- Forums
- Blogs
- Knowledge Bases
- Groups

- Siemens PLM Community
- NX Design
- NX Design Forum
- Geodesic? How can I create a curve on a surface t...

Options

- Subscribe to RSS Feed
- Mark Topic as New
- Mark Topic as Read
- Float this Topic for Current User
- Bookmark
- Subscribe
- Printer Friendly Page

- Mark as New
- Bookmark
- Subscribe
- Subscribe to RSS Feed
- Permalink
- Email to a Friend
- Report Inappropriate Content

08-19-2016 02:55 PM - edited 08-19-2016 02:58 PM

Hi all,

I want to create a curve that follows the shortest path between two points. Mathematically, this is the geodesic ( https://en.wikipedia.org/wiki/Geodesic )

Just doing a "curve on surface" with two points with the default options doesn't look so good (see all the wiggles below). Any ideas how to get what I want? I've attached the part (NX10) if you want to try.

.

Solved! Go to Solution.

Labels:

13 REPLIES

- Mark as New
- Bookmark
- Subscribe
- Subscribe to RSS Feed
- Permalink
- Email to a Friend
- Report Inappropriate Content

08-19-2016 02:57 PM

Sorry it is an igs. For some reason, .igs and .par are ok but .prt is blocked

- Mark as New
- Bookmark
- Subscribe
- Subscribe to RSS Feed
- Permalink
- Email to a Friend
- Report Inappropriate Content

08-19-2016 03:19 PM - edited 08-19-2016 03:29 PM

Did you try Project Curve? Create a line between the two points and then project it to the surfaces. You end up with a similar result, except without the wiggles.

You could also try loosening the tolerance on the Curve on Surface to eliminate the wiggles.

Regards, Ben

- Mark as New
- Bookmark
- Subscribe
- Subscribe to RSS Feed
- Permalink
- Email to a Friend
- Report Inappropriate Content

08-19-2016 03:36 PM - edited 08-19-2016 03:37 PM

Thanks, but the wiggles aren't the problem. The problem is that I need the shortest curve possible between two points.

There are a few ways to get something close but I'm hoping to find a way to get an exact solution. For example, Rhino has a ShortPath function: http://docs.mcneel.com/rhino/5/help/en-us/helpmedia/shortpath.mp4

- Mark as New
- Bookmark
- Subscribe
- Subscribe to RSS Feed
- Permalink
- Email to a Friend
- Report Inappropriate Content

08-19-2016 08:17 PM

- Mark as New
- Bookmark
- Subscribe
- Subscribe to RSS Feed
- Permalink
- Email to a Friend
- Report Inappropriate Content

08-22-2016 07:24 AM

Just out of curiosity, what is the purpose of the geodesic? Geodesics are lots of fun, mathematically, but their practical uses are few and far between, as far as I know. If you have some new application, I'd be interested to hear about it.

yamada

- Mark as New
- Bookmark
- Subscribe
- Subscribe to RSS Feed
- Permalink
- Email to a Friend
- Report Inappropriate Content

08-22-2016 10:09 AM

Actually, you are probably using Geodesic curves all the time but just don't know it. They have some nice properties.

1. They represent the minimal distance between two points while staying on a surface. So, if you are cutting or laying down tape, it results in the mimimal amount of material. IF you are moving a robot arm from point A to point B but need to avoid some volume, the Geodesic helps with the minimum movement distance.

2. They are straight (within the surface). Again, this is nice for anything you want to lay on a surface since it will avoid wrinkles. If you are at your desk, take some scotch tape and wrap it around something without forcing it to curve. This is a geodesic.

Geodesics on a plane are straight lines. On cylider they are either a straight line, a circle, or a helix which are all pretty useful.

I just need a general solution

- Mark as New
- Bookmark
- Subscribe
- Subscribe to RSS Feed
- Permalink
- Email to a Friend
- Report Inappropriate Content

08-23-2016 12:34 AM

A projected staight line is possible using intersection as can be seen in the image.

Frank Swinkels

- Mark as New
- Bookmark
- Subscribe
- Subscribe to RSS Feed
- Permalink
- Email to a Friend
- Report Inappropriate Content

08-23-2016 12:52 AM

Thanks. I was aware of the tape-laying application; it turns up often when designing with composites This works because points on the geodesic have zero geodesic curvature. This is related to the minimum distance criterion, but it takes a few pages of equations to see this, AFAIK.

When moving a robot, you usually need the fastest path, not the shortest, and following a surface will usually slow you down. And the geodesic is the shortest path only if the surface is convex, anyway -- you can make a straight-line jump across any concave regions.

Anyway, computing geodesics is hard. On all but the simplest surfaces (planes and cylinders), you have to solve some differential equations numerically. Algorithms for polygonal (facetted) objects are not too bad, so that might be an option, depending on your accuracy requirements.

yamada

- Mark as New
- Bookmark
- Subscribe
- Subscribe to RSS Feed
- Permalink
- Email to a Friend
- Report Inappropriate Content

08-23-2016 02:54 AM

Hi,

There is one command that I know of that supports geodesic. It is offset curve in face, one of the offset methods supports it. I assumed that if had the correct curve on surface to start with, then offset curve in face would also offset its end point in a geodesic manner. I tried it and the curve it produced it indeed shorter than projecting the line. The projected the line was roughly 507mm. My curve was 498mm.

This is the only way I could think of constructing what you were after. (Liked the challenge). Recipe below.

Regards, **bleep**

Recipe:

1. red line between the points

2. on th eleft side, create intersection curve using a plane normal to curve

3. create a small curve on surface on the section

4. offset in face (geodesic) several times

5. curve on surface through the end points of the offset curve in face results

Dashed blue = your curve

Yellow = projection normal to face

Green = my constructed curve

Follow Siemens PLM Software

© 2018 Siemens Product Lifecycle Management Software Inc