Open CASCADE, the 3D modelling kernel
3D modeling & numerical simulation

Search the Forums
See All Topics
Open CASCADEShowroomGet it!Developer CornerSupport and ProductsAbout us
Technical overview
Areas of use
Advantages
FAQ
Screenshots
Shape factory
Shape gallery
Demonstrations
What's new
System requirements
Download Center
Public license
Documentation
Getting started
Forums
Open Source community
Training and e-learning
A-la Carte Support
Value-added software
Complementary Components
Customer Corner
Company Profile
Marketing Materials
Contact Us
News
Home / Developer Corner / Forums / Usage issues / How exactly is the "SameParam" property defined for SameRange-edges ?

How exactly is the "SameParam" property defined for SameRange-edges ?

How exactly is the "SameParam" property defined for SameRange-edges ?
Fabian Hachenberg 2012/08/27 12:42
Hi, in the OCC docs it simply says (ShapeHealing documentation for the SameParam operator)
"This operator applies the computation SameParameter which ensures that various
representations of each edge (its 3d curve, the pcurve on each of the faces on which it lies)
give the same 3D point for the same parameter, within a given tolerance."

So let's say our curve3d is C3d(U) and our pcurve is Cp(U) and they both have the same parameter range [U1, U2]

Now I had a brief look into the ShapeAnalysis_Edge::ComputeDeviation routine, which does the following:
1. Calculate a set of U values in [U1, U2]
2. For each U value, calculate C3d(U) and get the "Extrema_LocateExtPC distance" to Cp(U)
3. For each U value, calculate Cp(U) and get the "Extrema_LocateExtPC distance" to C3d(U)
4. Return the maximum of those distances
I'm uncertain what distance Extrema_LocateExtPC returns. Is it the minimum distance? Then this would mean that SameParam is defined as follows

An edge with tolerance T has the SameParam property, if Max_{U}(Min_{V}(|C3d(U)-Cp(V)|), Min_{V}(|C3d(V)-Cp(U)|)) < T

On the other hand, Roman Lygin wrote on his blog (http://opencascade.blogspot.com/2009/02/topology-and-geometry-in-open-cascade_12.html) that
"- "same parameter" (BRep_Tool::SameParameter()), which is true when C(t) = S1(P1x(t), P1y(t)), i.e. any point along the edge corresponds to the same parameter on any of its curves."

This would imply the following definition

An edge with tolerance T has the SameParam property, if Max_{U}(|C3d(U)-Cp(U)|) < T

So what is the actual definition? Or does Extrema_LocateExtPC simply return a trivial distance between points? Then, of course, both definitions would be the same.
 
 
Latest news
  • New features to enhance the development process
  • Open CASCADE Technology 6.7.1 is available for download!
  • Open CASCADE Technology 6.7.0 is available for download!

  • © OPEN CASCADE 2000 - 2014  |  Search  |  Contacts   |  Site map