Other than visual analysis using emap and zebra, is there way to check the continuity of two surfaces?
gcon for curves, is there similar way for surface?
It’d be nice at least to know all the places where continuity is G0,G1, up to at G2 with edges highlighted similar to how naked edges are shown with show edges command.
Join will tell you if two surfaces edges are G0. CrvDeviation will tell you where the max and min deviation are.
OffserSrf is a a good way to analyze G1 continuity. IF you offset 2 unjoined surfaces by 50 times the absolute tolerance and the resulting offset surfaces join then you know the surfaces are at least within 1 degree of G1. If you can offset by 500 times tolerance and join then the surfaces are tangent to at least 0.1 degree So if your tolerance is .01 mm and you can offset two unjoined surfaces by 5mm and join the result then the they are tangent to .1 degree
G2 continuity is mostly marketing bullshit. The idea is to make surfaces that look good. Surfaces can look good with or without G2 continuity and they can look bad with or without G2 continuity. In the enclosed file are these surfaces G2?? IsThisG2.3dm (714.8 KB)
there is no tool in Rhino that lets you click on common boundaries between surfaces to then see whether they are G0, G1 or G2 continuous and, if they are not, where the deviation is and how large it is. While matching surfaces or moving CPs to adjust them manually, all you unfortunately have at your disposal is the zebra and emap display.
The surfaces from the file are… well… G1,43702 ; )
Yes, they are G1, but if those surfaces were on a manufactured part nobody would be able to find where the surface boundaries are even with the most sophisticated CMM equipment
I wonder if anyone else wants this kind of feature…
I’m not making automotive parts but if I make some tooling I really need to look into it more.
Currently I’m doing lost wax things and parts will get sanded down and polished so continuity is not critical
as long as it looks fine in the renders. Definitely something I need to pursue.
Totally for depending on plugins for surfaces like Xnurbs or others, but need to learn the fundamentals…
Tho yes, I get your point, jim, that G1 would be adequite in most cases. I think I can probably live with G1s in most cases,
probably more importantly may be how the surfaces are made and not just the how edges are connected.
At least for me I feel I need to “investigate” the surface and not just turn on stripes and look a bit to see
how the surface transition goes… just a quick tool would be nice. Maybe after few more months I can get a better sense of using it…
Was also thinking if the curvature analysis tool would help…though I guess with G1 connected surfaces it seems you can’t really see the transition well…
It depends on the business sector you’re in, on the type of clients you work for.
Rhino is a NURBS surface modeller, so it should contain tools that offer interactive control features that help the user manipulating the shape and continuity of surfaces accurately.
If the curvature discontinuity in this file IsThisG2.3dm (843.2 KB) is so easy to see then why do you ask for better tools to help you find such curvature discontinuity??
BTW, In Rhino the tool that will interactively show you where the curvature jumps are is called CurvatureGraph
That wasn’t the point. Using G2 continuity can make a better looking model but can also make things uglier. The same could be said for G1 continuity.
Please show me two surfaces, G0 along the common boundary (with CPs shown, ready for interactive matching to G1) and now bring CurvatureGraph into the game - how does it help making one surface G1 to the other? I’m all for learning things I have missed so far. Please find attached an STP file of a typical situation: a corner with three unequal setbacks, later to be executed in ABS to SPI A-2 (Grade #6).
here a thread where this was mildly discussed i believe there are a few more.
curvaturegraph is only visually and a mess of course. but history with curvaturegraphs set on input curves to control the surface works at least visually. probably a mild comfort for a real matching situation, since a dynamic isocurve CurvatureGraph would be more likely what is needed.
there is no numeric solution as far as i believe, but maybe PointDeviation could be enhanced, if it would have the ability to analyse the continuity as an option. it would work numerically at least and would not be very far from what is needed.
My comment about curvaturegraph revealing where the curvature jumps are was in regard to the model I posted.
I assume you are talking about manually editing surface control points to modify the surfaces so that they are tangent. There isn’t anything designed for that purpose. Personally, I would welcome something that does that, but I think there are very few Rhino users interested in manually matching surfaces for continuity.
That’s too bad, really, because the information is surely there somewhere in the bowels; it would just need an interactive display of it, while matching or manually manipulating CPs. Then one could use Rhino for many top-tier clients and reduce SolidWorks or Alias billing hours.
A report on surface continuity along a pair of surface edges could report:
Surface edge difference
Radius of curvature (or curvature) difference in direction normal to the edge
Radius of curvature (or curvature) difference in direction tangent to the edge
Edge tangent difference normal to the edge in degrees
Edge direction normal to the surfaces in degrees
The math to calculate these quantities is straight forward.
how would you calculate it? without having some computational maths studied i am not sure if i can say the same for myself… if you want to explain that in a tiny nutshell as a starter that would be interesting. i still remember that there are explicit and parametric forms, explicit on simple linear calculations i think like circles spheres or flat surfaces, parametric for more complex geometry which probably would be needed i this case.
i tried some nurbs books a year ago but i havent touched them since they are a bit intense without education in this field. so if you want to explain that be sure its in a crystal clear nutshell with a refractive index of vacuum
yes for example, i would add the conclusion if its continuous according to the classification.
every time someone asks how to improve the quality of his model by means of G2 / G3 transitions, people quickly appear who want to talk the interested parties out of curvature continuous modelling because of the too much effort. It is claimed that G2 is exaggerated. For me, however, the statement that G2 is “marketing bullshit” actually marks the hitherto best of the false statements on this subject.
From the design point of view, a G2 transition never has disadvantages compared to a G1 transition. G1 will always leave a visible light edge in the model.
In the production process, however, there may be reasons to build only G1.
For example, if you use a tool that absurdly increases the time required for G2.
Or if your own skills are not sufficient to create the model in the required time.
Or if the design model is rebuilt by engineers who lack tools or skills.
Everyone using normal tools in Rhino should be able to tell the insufficient quality of the model surface provided in “IsThisG2.3dm”. Even the simple matte white shader shows the problems. This model actually shows pretty good, what G1 actually gives you.These “features” would appear in the end product for sure. It does not matter whether the surface will be high-gloss or matt.
I know I used hard words here. But I think I’ve stayed objective. Please do not regard my words as an attack, but as a request to look at the subject again from the points of view outlined here.
But pictures are known to say more than a thousand words, therefore the analysis of surfaces in “IsThisG2.3dm” as images.
First of all: a real-life example of the painful, widespread result of ignored curvature continuous edge processing.