mirror of
https://git.dev.opencascade.org/repos/occt.git
synced 2025-09-03 14:10:33 +03:00
merge
This commit is contained in:
@@ -39,19 +39,10 @@ IMPLEMENT_STANDARD_RTTIEXT(AIS_TextLabel,AIS_InteractiveObject)
|
||||
//purpose :
|
||||
//=======================================================================
|
||||
AIS_TextLabel::AIS_TextLabel()
|
||||
<<<<<<< HEAD
|
||||
: myText ("?"),
|
||||
myHasOrientation3D (Standard_False),
|
||||
myHasOwnAnchorPoint (Standard_True),
|
||||
myHasFlipping (Standard_False)
|
||||
=======
|
||||
: myText ("?"),
|
||||
myFont ("Courier"),
|
||||
myFontAspect (Font_FA_Regular),
|
||||
myHasOrientation3D (Standard_False),
|
||||
myHasOwnAnchorPoint (Standard_True),
|
||||
myHasFlipping (Standard_False)
|
||||
>>>>>>> 05ac0c7d75 (0030922: Visualization - OpenGl_Text wrong local transformation if text has not own attach point)
|
||||
{
|
||||
myDrawer->SetTextAspect (new Prs3d_TextAspect());
|
||||
myDrawer->SetDisplayMode (0);
|
||||
@@ -313,7 +304,6 @@ void AIS_TextLabel::Compute (const Handle(PrsMgr_PresentationManager)& ,
|
||||
}
|
||||
gp_Ax2 anOrientation = myOrientation3D;
|
||||
anOrientation.SetLocation (aPosition);
|
||||
<<<<<<< HEAD
|
||||
Standard_Boolean aHasOwnAnchor = HasOwnAnchorPoint();
|
||||
if (myHasFlipping)
|
||||
{
|
||||
@@ -322,14 +312,13 @@ void AIS_TextLabel::Compute (const Handle(PrsMgr_PresentationManager)& ,
|
||||
Handle(Graphic3d_Text) aText =
|
||||
Prs3d_Text::Draw (thePrs->CurrentGroup(), anAsp, myText, anOrientation, aHasOwnAnchor);
|
||||
aText->SetTextFormatter (myFormatter);
|
||||
=======
|
||||
|
||||
/*
|
||||
Standard_Boolean aHasOwnAnchor = HasOwnAnchorPoint();
|
||||
if (myHasFlipping)
|
||||
aHasOwnAnchor = Standard_False; // always not using own anchor if flipping
|
||||
|
||||
Prs3d_Text::Draw (Prs3d_Root::CurrentGroup (thePrs), anAsp, myText, myOrientation3D, aHasOwnAnchor);
|
||||
>>>>>>> 05ac0c7d75 (0030922: Visualization - OpenGl_Text wrong local transformation if text has not own attach point)
|
||||
Prs3d_Text::Draw (Prs3d_Root::CurrentGroup (thePrs), anAsp, myText, myOrientation3D, aHasOwnAnchor);*/
|
||||
if (myHasFlipping && isInit)
|
||||
{
|
||||
thePrs->CurrentGroup()->SetFlippingOptions (Standard_False, gp_Ax2());
|
||||
|
@@ -2543,22 +2543,8 @@ static int VDrawText (Draw_Interpretor& theDI,
|
||||
const bool toFlip = Draw::ParseOnOffNoIterator (theArgsNb, theArgVec, anArgIt);
|
||||
aTextPrs->SetFlipping (toFlip);
|
||||
}
|
||||
<<<<<<< HEAD
|
||||
else if (aParam == "-ownanchor"
|
||||
|| aParam == "-noownanchor")
|
||||
=======
|
||||
else if (aParam == "-ownanchor")
|
||||
{
|
||||
if (++anArgIt >= theArgsNb)
|
||||
{
|
||||
std::cout << "Error: wrong number of values for parameter '" << aParam.ToCString() << "'.\n";
|
||||
return 1;
|
||||
}
|
||||
aTextPrs->SetOwnAnchorPoint (Draw::Atoi (theArgVec[anArgIt]) == 1);
|
||||
}
|
||||
else if (aParam == "-disptype"
|
||||
|| aParam == "-displaytype")
|
||||
>>>>>>> 05ac0c7d75 (0030922: Visualization - OpenGl_Text wrong local transformation if text has not own attach point)
|
||||
{
|
||||
const bool isOwnAnchor = Draw::ParseOnOffNoIterator (theArgsNb, theArgVec, anArgIt);
|
||||
aTextPrs->SetOwnAnchorPoint (isOwnAnchor);
|
||||
@@ -6798,7 +6784,6 @@ static int VNormals (Draw_Interpretor& theDI,
|
||||
|
||||
void ViewerTest::ObjectCommands(Draw_Interpretor& theCommands)
|
||||
{
|
||||
<<<<<<< HEAD
|
||||
const char* aGroup = "AIS Viewer";
|
||||
const char* aFileName = __FILE__;
|
||||
auto addCmd = [&](const char* theName, Draw_Interpretor::CommandFunction theFunc, const char* theHelp)
|
||||
@@ -7124,294 +7109,6 @@ Creates and displays a sphere.
|
||||
addCmd ("vobjzlayer", VObjZLayer, /* [vobjzlayer] */ R"(
|
||||
vobjzlayer : set/get object [layerid] - set or get z layer id for the interactive object
|
||||
)" /* [vobjzlayer] */);
|
||||
=======
|
||||
const char *group ="AISObjects";
|
||||
|
||||
theCommands.Add ("vtrihedron",
|
||||
"vtrihedron : vtrihedron name"
|
||||
"\n\t\t: [-dispMode {wireframe|shading} ]"
|
||||
"\n\t\t: [-origin x y z ]"
|
||||
"\n\t\t: [-zaxis u v w -xaxis u v w ]"
|
||||
"\n\t\t: [-drawAxes {X|Y|Z|XY|YZ|XZ|XYZ}]"
|
||||
"\n\t\t: [-hideLabels {on|off}]"
|
||||
"\n\t\t: [-hideArrows {on|off}]"
|
||||
"\n\t\t: [-label {XAxis|YAxis|ZAxis} value]"
|
||||
"\n\t\t: [-attribute {XAxisLength|YAxisLength|ZAxisLength"
|
||||
"\n\t\t: |TubeRadiusPercent|ConeRadiusPercent"
|
||||
"\n\t\t: |ConeLengthPercent|OriginRadiusPercent"
|
||||
"\n\t\t: |ShadingNumberOfFacettes} value]"
|
||||
"\n\t\t: [-color {Origin|XAxis|YAxis|ZAxis|XOYAxis|YOZAxis"
|
||||
"\n\t\t: |XOZAxis|Whole} {r g b | colorName}]"
|
||||
"\n\t\t: [-textColor {r g b | colorName}]"
|
||||
"\n\t\t: [-arrowColor {r g b | colorName}]"
|
||||
"\n\t\t: [-priority {Origin|XAxis|YAxis|ZAxis|XArrow"
|
||||
"\n\t\t: |YArrow|ZArrow|XOYAxis|YOZAxis"
|
||||
"\n\t\t: |XOZAxis|Whole} value]"
|
||||
"\n\t\t:"
|
||||
"\n\t\t: Creates a new *AIS_Trihedron* object or changes parameters of "
|
||||
"\n\t\t: existing trihedron. If no argument is set,"
|
||||
"\n\t\t: the default trihedron (0XYZ) is created."
|
||||
"\n\t\t: -dispMode mode of visualization: wf - wireframe,"
|
||||
"\n\t\t: sh - shading."
|
||||
"\n\t\t: Default value is wireframe."
|
||||
"\n\t\t: -origin allows to set trihedron location."
|
||||
"\n\t\t: -zaxis/-xaxis allows to set trihedron X and Z"
|
||||
"\n\t\t: directions. The directions should"
|
||||
"\n\t\t: be orthogonal. Y direction is calculated."
|
||||
"\n\t\t: -drawAxes allows to set what axes are drawn in the"
|
||||
"\n\t\t: trihedron, default state is XYZ"
|
||||
"\n\t\t: -hideLabels allows to show/hide trihedron labels"
|
||||
"\n\t\t: -hideArrows allows to show/hide trihedron arrows"
|
||||
"\n\t\t: -label allows to change default X/Y/Z titles of axes"
|
||||
"\n\t\t: -attribute sets parameters of trihedron"
|
||||
"\n\t\t: -color sets color properties of parts of trihedron"
|
||||
"\n\t\t: -textColor sets color properties of trihedron labels"
|
||||
"\n\t\t: -arrowColor sets color properties of trihedron arrows"
|
||||
"\n\t\t: -priority allows to change default selection priority"
|
||||
"\n\t\t: of trihedron components",
|
||||
__FILE__,VTrihedron,group);
|
||||
|
||||
theCommands.Add("vtri2d",
|
||||
"vtri2d Name"
|
||||
"\n\t\t: Creates a plane with a 2D trihedron from an interactively selected face.",
|
||||
__FILE__,VTrihedron2D ,group);
|
||||
|
||||
theCommands.Add("vplanetri",
|
||||
"vplanetri name"
|
||||
"\n\t\t: Create a plane from a trihedron selection. If no arguments are set, the default",
|
||||
__FILE__,VPlaneTrihedron ,group);
|
||||
|
||||
theCommands.Add("vsize",
|
||||
"vsize : vsize [name(Default=Current)] [size(Default=100)] "
|
||||
"\n\t\t: Changes the size of a named or selected trihedron."
|
||||
"\n\t\t: If the name is not defined: it affects the selected trihedrons otherwise nothing is done."
|
||||
"\n\t\t: If the value is not defined: it is set to 100 by default.",
|
||||
__FILE__,VSize,group);
|
||||
|
||||
theCommands.Add("vaxis",
|
||||
"vaxis name [Xa] [Ya] [Za] [Xb] [Yb] [Zb]"
|
||||
"\n\t\t: Creates an axis. If the values are not defined, an axis is created by interactive selection of two vertices or one edge",
|
||||
__FILE__,VAxisBuilder,group);
|
||||
|
||||
theCommands.Add("vaxispara",
|
||||
"vaxispara name "
|
||||
"\n\t\t: Creates an axis by interactive selection of an edge and a vertex.",
|
||||
__FILE__,VAxisBuilder,group);
|
||||
|
||||
theCommands.Add("vaxisortho",
|
||||
"vaxisortho name "
|
||||
"\n\t\t: Creates an axis by interactive selection of an edge and a vertex. The axis will be orthogonal to the selected edge.",
|
||||
__FILE__,VAxisBuilder,group);
|
||||
|
||||
theCommands.Add("vpoint",
|
||||
"vpoint PointName [Xa] [Ya] [Za] "
|
||||
"\n\t\t: Creates a point from coordinates. If the values are not defined,"
|
||||
"\n\t\t: a point is created by interactive selection of a vertice or an edge (in the center of the edge).",
|
||||
__FILE__,VPointBuilder,group);
|
||||
|
||||
theCommands.Add("vplane",
|
||||
"vplane PlaneName [AxisName/PlaneName/PointName] [PointName/PointName/PointName] [Nothing/Nothing/PointName] [TypeOfSensitivity {0|1}]"
|
||||
"\n\t\t: Creates a plane from named or interactively selected entities."
|
||||
"\n\t\t: TypeOfSensitivity:"
|
||||
"\n\t\t: 0 - Interior"
|
||||
"\n\t\t: 1 - Boundary",
|
||||
__FILE__,VPlaneBuilder,group);
|
||||
|
||||
theCommands.Add ("vchangeplane", "vchangeplane usage: \n"
|
||||
" vchangeplane <plane_name>"
|
||||
" [x=center_x y=center_y z=center_z]"
|
||||
" [dx=dir_x dy=dir_y dz=dir_z]"
|
||||
" [sx=size_x sy=size_y]"
|
||||
" [noupdate]\n"
|
||||
" - changes parameters of the plane:\n"
|
||||
" - x y z - center\n"
|
||||
" - dx dy dz - normal\n"
|
||||
" - sx sy - plane sizes\n"
|
||||
" - noupdate - do not update/redisplay the plane in context\n"
|
||||
" Please enter coordinates in format \"param=value\" in arbitrary order.",
|
||||
__FILE__, VChangePlane, group);
|
||||
|
||||
theCommands.Add("vplanepara",
|
||||
"vplanepara PlaneName "
|
||||
"\n\t\t: Creates a plane from interactively selected vertex and face.",
|
||||
__FILE__,VPlaneBuilder,group);
|
||||
|
||||
theCommands.Add("vplaneortho",
|
||||
"vplaneortho PlaneName "
|
||||
"\n\t\t: Creates a plane from interactive selected face and coplanar edge. ",
|
||||
__FILE__,VPlaneBuilder,group);
|
||||
|
||||
theCommands.Add("vline",
|
||||
"vline LineName [Xa/PointName] [Ya/PointName] [Za] [Xb] [Yb] [Zb] "
|
||||
"\n\t\t: Creates a line from coordinates, named or interactively selected vertices. ",
|
||||
__FILE__,VLineBuilder,group);
|
||||
|
||||
theCommands.Add("vcircle",
|
||||
"vcircle CircleName [PointName PointName PointName IsFilled]\n\t\t\t\t\t[PlaneName PointName Radius IsFilled]"
|
||||
"\n\t\t: Creates a circle from named or interactively selected entities."
|
||||
"\n\t\t: Parameter IsFilled is defined as 0 or 1.",
|
||||
__FILE__,VCircleBuilder,group);
|
||||
|
||||
theCommands.Add ("vdrawtext",
|
||||
"vdrawtext name text"
|
||||
"\n\t\t: [-pos X=0 Y=0 Z=0]"
|
||||
"\n\t\t: [-color {R G B|name}=yellow]"
|
||||
"\n\t\t: [-halign {left|center|right}=left]"
|
||||
"\n\t\t: [-valign {top|center|bottom|topfirstline}=bottom}]"
|
||||
"\n\t\t: [-angle angle=0]"
|
||||
"\n\t\t: [-zoom {0|1}=0]"
|
||||
"\n\t\t: [-height height=16]"
|
||||
"\n\t\t: [-aspect {regular|bold|italic|boldItalic}=regular]"
|
||||
"\n\t\t: [-font font=Times]"
|
||||
"\n\t\t: [-2d]"
|
||||
"\n\t\t: [-perspos {X Y Z}=0 0 0], where"
|
||||
"\n\t\t X and Y define the coordinate origin in 2d space relative to the view window"
|
||||
"\n\t\t Example: X=0 Y=0 is center, X=1 Y=1 is upper right corner etc..."
|
||||
"\n\t\t Z coordinate defines the gap from border of view window (except center position)."
|
||||
"\n\t\t: [-disptype {blend|decal|shadow|subtitle|dimension|normal}=normal}"
|
||||
"\n\t\t: [-subcolor {R G B|name}=white]"
|
||||
"\n\t\t: [-noupdate]"
|
||||
"\n\t\t: [-plane NormX NormY NormZ DirX DirY DirZ]"
|
||||
"\n\t\t: [-flipping]"
|
||||
"\n\t\t: [-ownanchor {0|1}=1]"
|
||||
"\n\t\t: Display text label at specified position.",
|
||||
__FILE__, VDrawText, group);
|
||||
|
||||
theCommands.Add("vdrawsphere",
|
||||
"vdrawsphere: vdrawsphere shapeName Fineness [X=0.0 Y=0.0 Z=0.0] [Radius=100.0] [ToShowEdges=0] [ToPrintInfo=1]\n",
|
||||
__FILE__,VDrawSphere,group);
|
||||
|
||||
theCommands.Add ("vlocation",
|
||||
"vlocation name"
|
||||
"\n\t\t: [-reset]"
|
||||
"\n\t\t: [-copyFrom otherName]"
|
||||
"\n\t\t: [-translate X Y [Z]]"
|
||||
"\n\t\t: [-rotate x y z dx dy dz angle]"
|
||||
"\n\t\t: [-scale [X Y Z] scale]"
|
||||
"\n\t\t: [-mirror x y z dx dy dz]"
|
||||
"\n\t\t: [-setLocation X Y [Z]]"
|
||||
"\n\t\t: [-setRotation QX QY QZ QW]"
|
||||
"\n\t\t: [-setScale [X Y Z] scale]"
|
||||
"\n\t\t: [-inheritParentTrsf {on|off}]"
|
||||
"\n\t\t: Object local transformation management:"
|
||||
"\n\t\t: -reset reset transformation to identity"
|
||||
"\n\t\t: -translate translate object"
|
||||
"\n\t\t: -rotate applies rotation to local transformation"
|
||||
"\n\t\t: -scale applies scale to local transformation"
|
||||
"\n\t\t: -mirror applies mirror to local transformation"
|
||||
"\n\t\t: -setLocation assign object location"
|
||||
"\n\t\t: -setRotation assign object rotation (quaternion)"
|
||||
"\n\t\t: -setScale assign object scale factor"
|
||||
"\n\t\t: -inheritParentTrsf option to inherit parent"
|
||||
"\n\t\t: transformation or not (ON by default)",
|
||||
__FILE__, VSetLocation, group);
|
||||
theCommands.Add ("vsetlocation",
|
||||
"alias for vlocation",
|
||||
__FILE__, VSetLocation, group);
|
||||
theCommands.Add ("vchild",
|
||||
"vchild parent [-add] [-remove] [-ignoreParentTrsf {0|1}] child1 [child2] [...]"
|
||||
"\n\t\t: Command for testing low-level presentation connections."
|
||||
"\n\t\t: vconnect command should be used instead.",
|
||||
__FILE__, VChild, group);
|
||||
theCommands.Add("vparent",
|
||||
"vparent parent [-ignoreVisu]"
|
||||
"\n\t\t: Command for testing object properties as parent in the hierarchy."
|
||||
"\n\t\t: Arguments:"
|
||||
"\n\t\t: -ignoreVisu do not propagate the visual state (display/erase/color) to children objects",
|
||||
__FILE__, VParent, group);
|
||||
theCommands.Add ("vcomputehlr",
|
||||
"vcomputehlr shapeInput hlrResult [-algoType {algo|polyAlgo}=polyAlgo]"
|
||||
"\n\t\t: [eyeX eyeY eyeZ dirX dirY dirZ upX upY upZ]"
|
||||
"\n\t\t: [-showTangentEdges {on|off}=off] [-nbIsolines N=0] [-showHiddenEdges {on|off}=off]"
|
||||
"\n\t\t: Arguments:"
|
||||
"\n\t\t: shapeInput - name of the initial shape"
|
||||
"\n\t\t: hlrResult - result HLR object from initial shape"
|
||||
"\n\t\t: eye, dir are eye position and look direction"
|
||||
"\n\t\t: up is the look up direction vector"
|
||||
"\n\t\t: -algoType HLR algorithm to use"
|
||||
"\n\t\t: -showTangentEdges include tangent edges"
|
||||
"\n\t\t: -nbIsolines include isolines"
|
||||
"\n\t\t: -showHiddenEdges include hidden edges"
|
||||
"\n\t\t: Use vtop to see projected HLR shape.",
|
||||
__FILE__, VComputeHLR, group);
|
||||
|
||||
theCommands.Add("vdrawparray",
|
||||
"vdrawparray name TypeOfArray={points|segments|polylines|triangles"
|
||||
"\n\t\t: |trianglefans|trianglestrips|quads|quadstrips|polygons}"
|
||||
"\n\t\t: [-deinterleaved|-mutable]"
|
||||
"\n\t\t: [vertex={'v' x y z [normal={'n' nx ny nz}] [color={'c' r g b}] [texel={'t' tx ty}]]"
|
||||
"\n\t\t: [bound= {'b' nbVertices [bound_color={'c' r g b}]]"
|
||||
"\n\t\t: [edge= {'e' vertexId]"
|
||||
"\n\t\t: [-shape shapeName] [-patch]"
|
||||
"\n\t\t: Commands create an Interactive Object for specified Primitive Array definition (Graphic3d_ArrayOfPrimitives)"
|
||||
"\n\t\t: with the main purpose is covering various combinations by tests",
|
||||
__FILE__,VDrawPArray,group);
|
||||
|
||||
theCommands.Add("vconnect",
|
||||
"vconnect name Xo Yo Zo object1 object2 ... [color=NAME]"
|
||||
"\n\t\t: Creates and displays AIS_ConnectedInteractive object from input object and location.",
|
||||
__FILE__, VConnect, group);
|
||||
|
||||
theCommands.Add("vconnectto",
|
||||
"vconnectto : instance_name Xo Yo Zo object [-nodisplay|-noupdate|-update]"
|
||||
" Makes an instance 'instance_name' of 'object' with position (Xo Yo Zo)."
|
||||
"\n\t\t: -nodisplay - only creates interactive object, but not displays it",
|
||||
__FILE__, VConnectTo,group);
|
||||
|
||||
theCommands.Add("vdisconnect",
|
||||
"vdisconnect assembly_name (object_name | object_number | 'all')"
|
||||
" Disconnects all objects from assembly or disconnects object by name or number (use vlistconnected to enumerate assembly children).",
|
||||
__FILE__,VDisconnect,group);
|
||||
|
||||
theCommands.Add("vaddconnected",
|
||||
"vaddconnected assembly_name object_name"
|
||||
"Adds object to assembly.",
|
||||
__FILE__,VAddConnected,group);
|
||||
|
||||
theCommands.Add("vlistconnected",
|
||||
"vlistconnected assembly_name"
|
||||
"Lists objects in assembly.",
|
||||
__FILE__,VListConnected,group);
|
||||
|
||||
|
||||
theCommands.Add("vselmode",
|
||||
"vselmode [object] selectionMode {on|off}"
|
||||
"\n\t\t: [{-add|-set|-globalOrLocal}=-globalOrLocal]"
|
||||
"\n\t\t: Switches selection mode for the specified object or for all objects in context."
|
||||
"\n\t\t: Selection mode is either an integer number specific to Interactive Object,"
|
||||
"\n\t\t: or sub-shape type in case of AIS_Shape:"
|
||||
"\n\t\t: Shape, Vertex, Edge, Wire, Face, Shell, Solid, CompSolid, Compound"
|
||||
"\n\t\t: The integer mode 0 (Shape in case of AIS_Shape) is reserved for selecting object as whole."
|
||||
"\n\t\t: Additional options:"
|
||||
"\n\t\t: -add already activated selection modes will be left activated"
|
||||
"\n\t\t: -set already activated selection modes will be deactivated"
|
||||
"\n\t\t: -globalOrLocal (default) if new mode is Global selection mode,"
|
||||
"\n\t\t: then active local selection modes will be deactivated"
|
||||
"\n\t\t: and the samthen active local selection modes will be deactivated",
|
||||
__FILE__, VSetSelectionMode, group);
|
||||
|
||||
theCommands.Add("vselnext",
|
||||
"vselnext : hilight next detected",
|
||||
__FILE__, VSelectionNext, group);
|
||||
|
||||
theCommands.Add("vselprev",
|
||||
"vselnext : hilight previous detected",
|
||||
__FILE__, VSelectionPrevious, group);
|
||||
|
||||
theCommands.Add("vtriangle",
|
||||
"vtriangle Name PointName PointName PointName"
|
||||
"\n\t\t: Creates and displays a filled triangle from named points.",
|
||||
__FILE__, VTriangle,group);
|
||||
|
||||
theCommands.Add("vsegment",
|
||||
"vsegment Name PointName PointName"
|
||||
"\n\t\t: Creates and displays a segment from named points.",
|
||||
__FILE__, VTriangle,group);
|
||||
|
||||
theCommands.Add("vobjzlayer",
|
||||
"vobjzlayer : set/get object [layerid] - set or get z layer id for the interactive object",
|
||||
__FILE__, VObjZLayer, group);
|
||||
>>>>>>> 05ac0c7d75 (0030922: Visualization - OpenGl_Text wrong local transformation if text has not own attach point)
|
||||
|
||||
addCmd ("vpolygonoffset", VPolygonOffset, /* [vpolygonoffset] */ R"(
|
||||
vpolygonoffset [object [mode factor units]]
|
||||
|
Reference in New Issue
Block a user