I am workint with BRepOffsetAPI_NormalProjection, and I find nothing helpful int the manuals, nor in the cdl-files, nor in the sources.
Who can tell me, how to project an edge/wire onto another shape ???
Here is what I try:

TopoDS_Compound see;
myBuild.MakeCompound( see);

BRepOffsetAPI_NormalProjection project( myShapeNabCyl);
project.Add( BSplineShapeSS);
project.Compute3d( Standard_True);

TopoDS_Shape projShape = project.Projection();
project.Compute3d( Standard_True);

myBuild.Add( see, projShape);
// then see is being returned to a viewer

The projected data cannot be viewed, because the programm crashes:

*** Abort *** an exception was raised, but no catch was found.
... The exception is:0x409a5c0b : Standard_ConstructionError:

Mikael Aronsson's picture

Hi !

It is not an easy question to answer, you have to do the dirty work yourself first I think.

Use a debugger and find out where the exception is thrown, there are a number of places this can happen (add for example).

Check the return value from Compute3D to make sure you are on the right path.

What is "BSplineShapeSS" ? it must be and edge or a wire.

What is "see", it must be a face.


MCV's picture

I am not talking about dirty work,
I just sought for someone to clarify (with his experience), in which order which method shall be used of that projection class.
I looked at the source-code/cdl/browser, and you hardly find any information that makes it clear enough, if you have never before used that class.

But thanks for your remarks, meanwhile I solved it with my own normal-projector and it works wonderful, but I think it is a shame, that a lot of the vast overwhelming OCC-functionality is rather a mystery than usable code.
Someone told me, that the OCC-courses being held sometime a year (by the OCC-staff) are also not good enough to clarify all "that mystery".
Otherwise I would pay for all courses, because I think OCC is worth investimg money in it, but of course this should pay off one day and not just eat your money with virtually no effect.



Mikael Aronsson's picture


MCV's picture


Forum supervisor's picture


Open CASCADE SA is a commercial company basing its business model on services provided around Open Source platforms.
Like in every business, our main goal is to satisfy our clients providing them as much high quality services as possible.
But we also concentrate on the Open Source community trying to publish as many of our results as possible.

Therefore we continue publishing Open CASCADE in Open Source making it more reliable and more documented, using our own resources to raise the quality of our Open Source.
Apparently we do not have large resources to invest in the "free" usage - because as a commercial company we need to be profitable.

We also remind you that this forum has been created for the Open Source Community :
- to encourage sharing the expertise between its members
- to help each other in using our product

Though we regularly provide guidelines on some questions posted on this forum we cannot provide exhaustive technical consulting here. This would obviously compete with our paid support services and would result in our client loss what would finally damage the overall Community.

We have never counted external contribution as a main source of Open CASCADE development. We have always been and remain to be the original and primary developer who invests much part of its
profit into R&D and Open Source. This however does not decline any external help which we always welcome.

Again we remind you that the forum has been created for technical discussions, and we encourage everybody to hold on the technical style of the communications, avoiding any unnecessary discussions not really intended to be here. Therefore we feel obliged to moderate several last messages, due to their contradiction with the purpose of this forum and due to offensive style adopted therein.

Thank you for your comprehension.

With regards,
Forum Supervisor

MCV's picture

Thank you very much,
this is the way a company in our so-called "free-market" society lives up to the "high ideals" of free speech and opinions in our democracy.

Good to know.

Please do not forget to moderate that message too, it reminds me of the ex-stalinist sovjet union !

By the way, is this the reason, why your classbrowsers are all painted in RED ???

Yours brotherly


MCV's picture

...and God is my witness:
"Thou shallst not speek freely and critizise".

Therefore I will switch to nothing but stupid reductionist technical blahblah, as you told us so on that forum, and nothing else.

I hope that by doing so, we´ll be back in line of your company´s corporate identity.

Technical inhuman greetings