// and conditions governing the rights and limitations under the License.
-
-#ifdef DEBUG
-#include <OSD_Timer.hxx>
-extern OSD_Timer RestrictedFaceTimer1,RestrictedFaceTimer2,RestrictedFaceTimer3,RestrictedFaceTimer4;
-#endif
-
#include <Hatch_Hatcher.hxx>
-#include <Graphic3d_Array1OfVertex.hxx>
-#include <Graphic3d_ArrayOfPrimitives.hxx>
#include <Graphic3d_Group.hxx>
#include <gp_Pnt.hxx>
#include <Prs3d_IsoAspect.hxx>
const Handle(Prs3d_Drawer)& aDrawer,
Prs3d_NListOfSequenceOfPnt& Curves)
{
- Standard_Boolean isPA = Graphic3d_ArrayOfPrimitives::IsEnable();
Standard_Real aLimit = aDrawer->MaximalParameterValue();
Standard_Integer nbPoints = aDrawer->Discretisation();
-#ifdef DEBUG
- RestrictedFaceTimer1.Start();
-#endif
-
RestrictionTool ToolRst (aFace);
// compute bounds of the restriction
VMax = aFace->Surface().LastVParameter();
}
-#ifdef DEBUG
- RestrictedFaceTimer1.Stop();
-
- RestrictedFaceTimer2.Start();
-#endif
-
// load the isos
Hatch_Hatcher isobuild(1.e-5,ToolRst.IsOriented());
Standard_Boolean UClosed = aFace->IsUClosed();
}
}
-#ifdef DEBUG
- RestrictedFaceTimer2.Stop();
- RestrictedFaceTimer3.Start();
-#endif
-
// trim the isos
Standard_Real U1, U2, U, DU;
}
}
-#ifdef DEBUG
- RestrictedFaceTimer3.Stop();
- RestrictedFaceTimer4.Start();
-#endif
-
// draw the isos
-
-
Adaptor3d_IsoCurve anIso;
anIso.Load(aFace);
Handle(Geom_Curve) BC;
BC = GB->VIso(Coord);
//Note that the isos are the part of the shape, it will be displayed after a computation the whole shape
//NbPoints = 30 - default parameter for computation of such curves
- DrawFaceIso::Add(aPresentation,GeomAdaptor_Curve(BC), b1, b2, aDeflection, Pnts, 30, !isPA);
+ DrawFaceIso::Add(aPresentation,GeomAdaptor_Curve(BC), b1, b2, aDeflection, Pnts, 30, Standard_False);
Curves.Append(Pnts);
}
else {
anIso.Load(GeomAbs_IsoU,Coord,b1,b2);
else
anIso.Load(GeomAbs_IsoV,Coord,b1,b2);
- DrawFaceIso::Add(aPresentation,anIso, aDeflection, aDrawer, Pnts, !isPA);
+ DrawFaceIso::Add(aPresentation,anIso, aDeflection, aDrawer, Pnts, Standard_False);
Curves.Append(Pnts);
}
}
}
-#ifdef DEBUG
- RestrictedFaceTimer4.Stop();
-#endif
}
}
}
-
- return Standard_False;
+ return Standard_False;
}
-
//=========================================================================
// function: Add
// purpose
void Prs3d_WFRestrictedFace::Add
(const Handle (Prs3d_Presentation)& aPresentation,
const Handle(BRepAdaptor_HSurface)& aFace,
- const Handle (Prs3d_Drawer)& aDrawer){
-
- Standard_Integer finu = aDrawer->UIsoAspect()->Number();
- Standard_Integer finv = aDrawer->VIsoAspect()->Number();
- Quantity_Length aDeflection = aDrawer->MaximalChordialDeviation();
-
- Handle(Graphic3d_Group) TheGroup = Prs3d_Root::CurrentGroup(aPresentation);
- TheGroup->BeginPrimitives();
+ const Handle (Prs3d_Drawer)& aDrawer)
+{
Prs3d_NListOfSequenceOfPnt Curves;
Prs3d_WFRestrictedFace::Add (
aPresentation,
aFace,
Standard_True,
Standard_True,
- aDeflection,
- finu,
- finv,
+ aDrawer->MaximalChordialDeviation(),
+ aDrawer->UIsoAspect()->Number(),
+ aDrawer->VIsoAspect()->Number(),
aDrawer,
Curves);
-
- TheGroup->EndPrimitives();
}
void Prs3d_WFRestrictedFace::AddUIso
(const Handle (Prs3d_Presentation)& aPresentation,
const Handle(BRepAdaptor_HSurface)& aFace,
- const Handle (Prs3d_Drawer)& aDrawer) {
-
- Standard_Integer finu = aDrawer->UIsoAspect()->Number();
- Standard_Integer finv = aDrawer->VIsoAspect()->Number();
- Quantity_Length aDeflection = aDrawer->MaximalChordialDeviation();
+ const Handle (Prs3d_Drawer)& aDrawer)
+{
Prs3d_NListOfSequenceOfPnt Curves;
Prs3d_WFRestrictedFace::Add (
aPresentation,
aFace,
Standard_True,
Standard_False,
- aDeflection,
- finu,
- finv,
+ aDrawer->MaximalChordialDeviation(),
+ aDrawer->UIsoAspect()->Number(),
+ aDrawer->VIsoAspect()->Number(),
aDrawer,
Curves);
}
void Prs3d_WFRestrictedFace::AddVIso
(const Handle (Prs3d_Presentation)& aPresentation,
const Handle(BRepAdaptor_HSurface)& aFace,
- const Handle (Prs3d_Drawer)& aDrawer) {
-
- Standard_Integer finu = aDrawer->UIsoAspect()->Number();
- Standard_Integer finv = aDrawer->VIsoAspect()->Number();
- Quantity_Length aDeflection = aDrawer->MaximalChordialDeviation();
+ const Handle (Prs3d_Drawer)& aDrawer)
+{
Prs3d_NListOfSequenceOfPnt Curves;
Prs3d_WFRestrictedFace::Add (
aPresentation,
aFace,
Standard_False,
Standard_True,
- aDeflection,
- finu,
- finv,
+ aDrawer->MaximalChordialDeviation(),
+ aDrawer->UIsoAspect()->Number(),
+ aDrawer->VIsoAspect()->Number(),
aDrawer,
Curves);
}
const Quantity_Length Z,
const Quantity_Length aDistance,
const Handle(BRepAdaptor_HSurface)& aFace,
- const Handle (Prs3d_Drawer)& aDrawer){
-
- Standard_Integer finu = aDrawer->UIsoAspect()->Number();
- Standard_Integer finv = aDrawer->VIsoAspect()->Number();
- Quantity_Length aDeflection = aDrawer->MaximalChordialDeviation();
+ const Handle (Prs3d_Drawer)& aDrawer)
+{
return Prs3d_WFRestrictedFace::Match (
X,Y,Z,aDistance,
- aFace,
- Standard_True,
- Standard_True,
- aDeflection,
- finu,
- finv,
- aDrawer);
+ aFace,
+ Standard_True,
+ Standard_True,
+ aDrawer->MaximalChordialDeviation(),
+ aDrawer->UIsoAspect()->Number(),
+ aDrawer->VIsoAspect()->Number(),
+ aDrawer);
}
const Quantity_Length Z,
const Quantity_Length aDistance,
const Handle(BRepAdaptor_HSurface)& aFace,
- const Handle (Prs3d_Drawer)& aDrawer) {
-
- Standard_Integer finu = aDrawer->UIsoAspect()->Number();
- Standard_Integer finv = aDrawer->VIsoAspect()->Number();
- Quantity_Length aDeflection = aDrawer->MaximalChordialDeviation();
+ const Handle (Prs3d_Drawer)& aDrawer)
+{
return Prs3d_WFRestrictedFace::Match (
X,Y,Z,aDistance,
- aFace,
- Standard_True,
- Standard_False,
- aDeflection,
- finu,
- finv,
- aDrawer);
+ aFace,
+ Standard_True,
+ Standard_False,
+ aDrawer->MaximalChordialDeviation(),
+ aDrawer->UIsoAspect()->Number(),
+ aDrawer->VIsoAspect()->Number(),
+ aDrawer);
}
const Quantity_Length Z,
const Quantity_Length aDistance,
const Handle(BRepAdaptor_HSurface)& aFace,
- const Handle (Prs3d_Drawer)& aDrawer) {
-
- Standard_Integer finu = aDrawer->UIsoAspect()->Number();
- Standard_Integer finv = aDrawer->VIsoAspect()->Number();
- Quantity_Length aDeflection = aDrawer->MaximalChordialDeviation();
+ const Handle (Prs3d_Drawer)& aDrawer)
+{
return Prs3d_WFRestrictedFace::Match (
X,Y,Z,aDistance,
- aFace,
- Standard_False,
- Standard_True,
- aDeflection,
- finu,
- finv,
- aDrawer);
+ aFace,
+ Standard_False,
+ Standard_True,
+ aDrawer->MaximalChordialDeviation(),
+ aDrawer->UIsoAspect()->Number(),
+ aDrawer->VIsoAspect()->Number(),
+ aDrawer);
}