|
Welcome to the COE Discussion Forum!
|
|
|
|
To participate in the discussion forum, you must be logged in to the website. If you forget your login information, please contact COE Headquarters at coe@coe.org or (800) 263-2255.
If you are new to the COE Discussion Forum and would like to participate, please register.
|
|
|
The COE 2008 Fall Industry Workshops
|
| Experience two days of industry-focused education and hands-on training on the Dassault PLM solutions suite of products. All education featured at the workshop is developed by and for users of CATIA®, ENOVIA®, DELMIA® and SIMULIA®. |
| |
|

|
Automotive
Oct. 15-16
Troy, Michigan
|
Aerospace & Defense
Oct. 27-28
Wichita, Kansas
|
 |
|
| Forum Highlight: CATIA V6 |
|
|
 |
|
 |
| You are not authorized to post a reply.
|
|
| Author |
Messages |
|
COE-FORUM-USER
 |
| 01 Jun 2006 11:08 AM |
|
My problem is in two parts,
My math is really bad and unless i can see a step by step example i dont understand to easily.
does anybody have a long hand calculation for establishing a 4 , 6 or 8 point bezier curve given the x,y,z points.
below is my final goal
Madaxe
I have found that a bezier 8 point curve will closely represent a pipe that has an 'S' curve to it
ie it has a point of inflection. its natural tendancy is to equalise a max curvature value at each bend eg 1/r is equal for each conic for each subsequent bend.
an 'S' has two bends therefor both have an equal 1/r value, at the tightest point off radius.
the reason for using an 8 point bezier curve is to obtain curvature value of 0 at each end but having curvature accelaration control. i know that :-
point 1 and 8 are my start and end points i know there x,y,z values i know the vector direction at the start and end points i know that points 2,3 and 6,7 should lie equally spaced on the vector at the relivant end i know the spacing between 2,3 and 6,7 is a function of stiffness for the pipe which would take into account the second momment of area. i know the length of my pipe i know the minimum bend radius before pipe failure i know that the 1/r value should be equal at each of the tightest bend points.
im trying to write an equation that would calculate the pipe bezier center line from the above inputs and ultimatelt a KBE tool to run this calc.
MADAXE
|
|
|
|
|
JMSWTLK
 |
| 01 Jun 2006 06:43 PM |
|
Madaxe,
This is fairly straightforward in VBA for CATIA. It is also an example of the types of things that need to be organized within the COE user group. Perhaps, someone already has this in the library.
I would argue that a class of algorithms/heuristics ought to be available to anyone who wants them just like the KBE Best Practices document is open to review by any party interested enough to browse the Forum.
I don't have code right now, but let me sketch the approach.
1. put up a menu to allow selection of the pre-points and parameters 2. then, fit the Bezier using the points and the parameters (this is not as difficult as it seems, I've done it by hand calculator - I pre-date all the jazzy stuff and learned how to do things the hard way) 3. make the curve object in CATIA using the Bezier curve (with a translation to something internal to CATIA)
This is precisely the type of thing that VBA is good for. Anyone - is there a Bezier fitter in CATIA v5? That is the first question.
Now, a workaround might be to run your routine outside of CATIA (as you mention that you have some other system that you tested with). Then, your curve could be brought into CATIA using one of the known translation methods.
The latter might be manually oriented, but 'workarounds' are ever-present (though they might be a diminishing set - this I don't know and am waiting final judgment on .
By the way, this sounds like an interesting approach to constraining the spline.
|
|
john.m.switlik@ieee.org 316-204-0758 http://en.wikipedia.org/wiki/User:JMSwtlk |
|
|
CLIFFJOHNSON

 |
| 02 Jun 2006 08:17 AM |
|
Once you get above order 4 the calculation by hand gets not fun real fast.
Even if you make a general solution where you arrive at the polynominal equation by the control points how are you going to make a curve in CATIA from that? I don't know of an interface where you enter polynominal coefficients and get a bezier curve.
The Bezier curve (the freestyle curve by control points) is not supported in Catia VBA.
Here are some options that will work:
1. The easiest answer is instead of a Bezier use a GSD connect curve - it's easy to automate in VBA and you have curvature control at the ends and a good amount of overall shape control.
2. If you must have Bezier curves, make up a series of power copies to instantiate a freestyle bezier curve with different point counts: "3 Point Bezier", "4 Point Bezier", etc, up to "8 Point Bezier". You can instantiate these power copies in VBA (R15 or later) directly from your input points. I have done this before and it works.
Good Luck,
Cliff
|
|
|
|
|
COE-FORUM-USER
 |
| 02 Jun 2006 09:21 AM |
|
Hi
thank you both for your replies any help would be great, i like the idea of using UDF or power copies to create the final curve as i can create all final geometry of the pipe and control think like OD ID with parameters.
yes i think the initial calc will be done out side of catia and then point data for the 8 control pooints would be imported from a file then a udf to fit a bezier to it and all child geometry there after.
i tried GSD and connect but the resultant curve was not natural enough and changing the tensions did not replicate a real hose unfortunately.
do you guys have any other surgestions my VB is non existant.
MADAXE |
|
|
|
|
IPHILLIPS
 |
| 06 Jun 2006 03:29 PM |
|
| Rather than reinvent wheels, I think that the effort put in to solve it would be less if you used it to control the tension of a connect curve intelligently. Or use it to control GSD points for a Freestyle spline. Or even use the optimiser (PEO) So I'm with Cliff all the way. |
|
Ian Phillips. FORCEFIVE AG, Munich, Germany |
|
|
COE-FORUM-USER
 |
| 08 Jun 2006 06:02 AM |
|
Hi sorry guys i was in a meeting with dassault yeasturday they have a solution in 17 in which they used splines but they agreed with me on the bezier curve algorithum which is why they have already included a new pick in the new tubing functionality that uses bezier math, so i guess ill just wait untill 17 and not reinvent the wheel thanks for all the responces
MadAxe |
|
|
|
|
|
| You are not authorized to post a reply. |
|
|
|
ActiveForums 3.6
|
|
|
|