Merge branch occ/shape_reparation_2
@ -37,9 +37,11 @@ SET(GOOD_TESTS
|
|||||||
basic_geom_objs_ex07.py
|
basic_geom_objs_ex07.py
|
||||||
basic_geom_objs_ex08.py
|
basic_geom_objs_ex08.py
|
||||||
basic_geom_objs_ex09.py
|
basic_geom_objs_ex09.py
|
||||||
|
basic_geom_objs_ex10.py
|
||||||
basic_operations_ex01.py
|
basic_operations_ex01.py
|
||||||
basic_operations_ex02.py
|
basic_operations_ex02.py
|
||||||
basic_operations_ex03.py
|
basic_operations_ex03.py
|
||||||
|
basic_operations_ex04.py
|
||||||
basic_properties.py
|
basic_properties.py
|
||||||
blocks_operations_ex01.py
|
blocks_operations_ex01.py
|
||||||
blocks_operations_ex02.py
|
blocks_operations_ex02.py
|
||||||
@ -64,7 +66,8 @@ SET(GOOD_TESTS
|
|||||||
complex_objs_ex07.py
|
complex_objs_ex07.py
|
||||||
complex_objs_ex08.py
|
complex_objs_ex08.py
|
||||||
complex_objs_ex09.py
|
complex_objs_ex09.py
|
||||||
complex_objs_ex10.py
|
complex_objs_ex10.py
|
||||||
|
fast_intersection.py
|
||||||
free_boundaries.py
|
free_boundaries.py
|
||||||
free_faces.py
|
free_faces.py
|
||||||
GEOM_box.py
|
GEOM_box.py
|
||||||
@ -115,6 +118,7 @@ SET(GOOD_TESTS
|
|||||||
transformation_operations_ex11.py
|
transformation_operations_ex11.py
|
||||||
transformation_operations_ex12.py
|
transformation_operations_ex12.py
|
||||||
transformation_operations_ex13.py
|
transformation_operations_ex13.py
|
||||||
|
transformation_operations_ex14.py
|
||||||
viewing_geom_objs_ex01.py
|
viewing_geom_objs_ex01.py
|
||||||
viewing_geom_objs_ex02.py
|
viewing_geom_objs_ex02.py
|
||||||
viewing_geom_objs_ex03.py
|
viewing_geom_objs_ex03.py
|
||||||
|
37
doc/salome/examples/basic_geom_objs_ex10.py
Normal file
@ -0,0 +1,37 @@
|
|||||||
|
# Creation of a Surface From Face
|
||||||
|
|
||||||
|
import salome
|
||||||
|
salome.salome_init()
|
||||||
|
import GEOM
|
||||||
|
from salome.geom import geomBuilder
|
||||||
|
geompy = geomBuilder.New(salome.myStudy)
|
||||||
|
import math
|
||||||
|
import SALOMEDS
|
||||||
|
|
||||||
|
# Create Vertices, Edges, Wire, Face and Disk
|
||||||
|
Vertex_1 = geompy.MakeVertex(0, 0, 0)
|
||||||
|
Vertex_2 = geompy.MakeVertex(100, 0, 0)
|
||||||
|
Vertex_3 = geompy.MakeVertex(50, 100, 0)
|
||||||
|
Edge_1 = geompy.MakeEdge(Vertex_1, Vertex_2)
|
||||||
|
Edge_2 = geompy.MakeEdge(Vertex_2, Vertex_3)
|
||||||
|
Edge_3 = geompy.MakeEdge(Vertex_3, Vertex_1)
|
||||||
|
Wire_1 = geompy.MakeWire([Edge_1, Edge_2, Edge_3])
|
||||||
|
Face_1 = geompy.MakeFace(Wire_1, True)
|
||||||
|
Disk_1 = geompy.MakeDiskR(100, 1)
|
||||||
|
|
||||||
|
# Create Surfaces From Faces.
|
||||||
|
SurfaceFromFace_1 = geompy.MakeSurfaceFromFace(Face_1)
|
||||||
|
SurfaceFromFace_2 = geompy.MakeSurfaceFromFace(Disk_1)
|
||||||
|
|
||||||
|
#Add created object to study
|
||||||
|
geompy.addToStudy( Vertex_1, "Vertex_1" )
|
||||||
|
geompy.addToStudy( Vertex_2, "Vertex_2" )
|
||||||
|
geompy.addToStudy( Vertex_3, "Vertex_3" )
|
||||||
|
geompy.addToStudy( Edge_1, "Edge_1" )
|
||||||
|
geompy.addToStudy( Edge_2, "Edge_2" )
|
||||||
|
geompy.addToStudy( Edge_3, "Edge_3" )
|
||||||
|
geompy.addToStudy( Wire_1, "Wire_1" )
|
||||||
|
geompy.addToStudy( Face_1, "Face_1" )
|
||||||
|
geompy.addToStudy( Disk_1, "Disk_1" )
|
||||||
|
geompy.addToStudy( SurfaceFromFace_1, "SurfaceFromFace_1" )
|
||||||
|
geompy.addToStudy( SurfaceFromFace_2, "SurfaceFromFace_2" )
|
40
doc/salome/examples/basic_operations_ex04.py
Normal file
@ -0,0 +1,40 @@
|
|||||||
|
# Get shared sub-shapes
|
||||||
|
|
||||||
|
import salome
|
||||||
|
salome.salome_init()
|
||||||
|
import GEOM
|
||||||
|
from salome.geom import geomBuilder
|
||||||
|
geompy = geomBuilder.New(salome.myStudy)
|
||||||
|
import SALOMEDS
|
||||||
|
|
||||||
|
# create a box and partigion it by two planes
|
||||||
|
box = geompy.MakeBoxDXDYDZ(200, 200, 200)
|
||||||
|
p = geompy.MakeVertex(100, 100, 100)
|
||||||
|
v1 = geompy.MakeVectorDXDYDZ(1, 1, 0)
|
||||||
|
v2 = geompy.MakeVectorDXDYDZ(1, -1, 0)
|
||||||
|
pln1 = geompy.MakePlane(p, v1, 2000)
|
||||||
|
pln2 = geompy.MakePlane(p, v2, 2000)
|
||||||
|
partition = geompy.MakePartition([box], [pln1, pln2])
|
||||||
|
|
||||||
|
# extract solids from result of partition
|
||||||
|
solids = geompy.SubShapeAllSorted(partition, geompy.ShapeType['SOLID'])
|
||||||
|
|
||||||
|
# get shared shapes from the partition (compound of 4 solids)
|
||||||
|
# a) faces that are shared by all 4 solids (0 found)
|
||||||
|
pF_T = geompy.GetSharedShapesMulti(partition, geompy.ShapeType['FACE'])
|
||||||
|
# b) faces that are shared by any couple of solids (4 found)
|
||||||
|
pF_F = geompy.GetSharedShapesMulti(partition, geompy.ShapeType['FACE'], False)
|
||||||
|
# c) edges that are shared by all 4 solids (1 found)
|
||||||
|
pE_T = geompy.GetSharedShapesMulti(partition, geompy.ShapeType['EDGE'])
|
||||||
|
# d) edges that are shared by any couple of solids (13 found)
|
||||||
|
pE_F = geompy.GetSharedShapesMulti(partition, geompy.ShapeType['EDGE'], False)
|
||||||
|
|
||||||
|
# get shared shapes from the list of solids
|
||||||
|
# a) faces that are shared by all 4 solids (0 found)
|
||||||
|
sF_T = geompy.GetSharedShapesMulti(solids, geompy.ShapeType['FACE'])
|
||||||
|
# b) faces that are shared by 1st/2nd, 1st/3rd and 1st/4th solids (2 found)
|
||||||
|
sF_F = geompy.GetSharedShapesMulti(solids, geompy.ShapeType['FACE'], False)
|
||||||
|
# c) edges that are shared by all 4 solids (1 found)
|
||||||
|
sE_T = geompy.GetSharedShapesMulti(solids, geompy.ShapeType['EDGE'])
|
||||||
|
# d) edges that are shared by 1st/2nd, 1st/3rd and 1st/4th solids (7 found)
|
||||||
|
sE_F = geompy.GetSharedShapesMulti(solids, geompy.ShapeType['EDGE'], False)
|
@ -10,7 +10,7 @@ geompy = geomBuilder.New(salome.myStudy)
|
|||||||
box = geompy.MakeBoxDXDYDZ(100,30,100)
|
box = geompy.MakeBoxDXDYDZ(100,30,100)
|
||||||
(IsValid, err) = geompy.CheckShape(box, 0, 2)
|
(IsValid, err) = geompy.CheckShape(box, 0, 2)
|
||||||
if IsValid == 0:
|
if IsValid == 0:
|
||||||
geompy.PrintShapeError(box, err)
|
geompy.PrintShapeErrors(box, err)
|
||||||
raise RuntimeError, "Invalid box created"
|
raise RuntimeError, "Invalid box created"
|
||||||
else:
|
else:
|
||||||
print "\nBox is valid"
|
print "\nBox is valid"
|
||||||
|
@ -20,14 +20,12 @@ p3 = geompy.MakeVertex( -30., -30., 10.)
|
|||||||
|
|
||||||
# create an arc from three points
|
# create an arc from three points
|
||||||
arc = geompy.MakeArc(p1, p2, p3)
|
arc = geompy.MakeArc(p1, p2, p3)
|
||||||
ShapeListCompound = []
|
ContoursList = []
|
||||||
i = 0
|
for i in range(4):
|
||||||
while i <= 3 :
|
|
||||||
S = geompy.MakeTranslation(arc, i * 50., 0., 0.)
|
S = geompy.MakeTranslation(arc, i * 50., 0., 0.)
|
||||||
ShapeListCompound.append(S)
|
ContoursList.append(S)
|
||||||
i = i + 1
|
|
||||||
|
|
||||||
compound = geompy.MakeCompound(ShapeListCompound)
|
compound = geompy.MakeCompound(ContoursList)
|
||||||
|
|
||||||
# create a filling
|
# create a filling
|
||||||
filling = geompy.MakeFilling(compound, mindeg, maxdeg, tol3d, tol2d, nbiter)
|
filling = geompy.MakeFilling(compound, mindeg, maxdeg, tol3d, tol2d, nbiter)
|
||||||
|
34
doc/salome/examples/fast_intersection.py
Normal file
@ -0,0 +1,34 @@
|
|||||||
|
# Fast intersection
|
||||||
|
|
||||||
|
import salome
|
||||||
|
salome.salome_init()
|
||||||
|
import GEOM
|
||||||
|
from salome.geom import geomBuilder
|
||||||
|
geompy = geomBuilder.New(salome.myStudy)
|
||||||
|
|
||||||
|
# create a box
|
||||||
|
box = geompy.MakeBoxDXDYDZ(100,100,100)
|
||||||
|
# create a cylinder
|
||||||
|
cylinder = geompy.MakeCylinderRH(100, 300)
|
||||||
|
|
||||||
|
isOk, res1, res2 = geompy.FastIntersect(box, cylinder)
|
||||||
|
if isOk == 0:
|
||||||
|
raise RuntimeError, "No intersection!"
|
||||||
|
else:
|
||||||
|
print "\nTwo lists of indexes of sub-shapes localize the intersection:"
|
||||||
|
print res1, res2
|
||||||
|
|
||||||
|
# create two boxes with gap
|
||||||
|
Ver1 = geompy.MakeVertex(0, 0, 0)
|
||||||
|
Ver2 = geompy.MakeVertex(100, 100, 100)
|
||||||
|
Ver3 = geompy.MakeVertex(100.1, 0, 0)
|
||||||
|
Ver4 = geompy.MakeVertex(200, 200, 200)
|
||||||
|
box1 = geompy.MakeBoxTwoPnt(Ver1, Ver2)
|
||||||
|
box2 = geompy.MakeBoxTwoPnt(Ver3, Ver4)
|
||||||
|
|
||||||
|
isOk1, aRes1, aRes2 = geompy.FastIntersect(box1, box2, 1.)
|
||||||
|
if isOk1 == 0:
|
||||||
|
raise RuntimeError, "No gaps!"
|
||||||
|
else:
|
||||||
|
print "\nTwo lists of indexes of sub-shapes localize the gap:"
|
||||||
|
print aRes1, aRes2
|
@ -1,27 +1,26 @@
|
|||||||
# Sewing
|
# Sewing
|
||||||
|
|
||||||
import salome
|
import salome, math
|
||||||
salome.salome_init()
|
salome.salome_init()
|
||||||
import GEOM
|
|
||||||
from salome.geom import geomBuilder
|
from salome.geom import geomBuilder
|
||||||
|
|
||||||
geompy = geomBuilder.New(salome.myStudy)
|
geompy = geomBuilder.New(salome.myStudy)
|
||||||
import math
|
gg = salome.ImportComponentGUI("GEOM")
|
||||||
gg = salome.ImportComponentGUI("GEOM")
|
|
||||||
|
|
||||||
# create base points
|
# create base points
|
||||||
px = geompy.MakeVertex(100., 0., 0.)
|
px = geompy.MakeVertex(100., 0., 0.)
|
||||||
py = geompy.MakeVertex(0., 100., 0.)
|
py = geompy.MakeVertex(0., 100., 0.)
|
||||||
pz = geompy.MakeVertex(0., 0., 100.)
|
pz = geompy.MakeVertex(0., 0., 100.)
|
||||||
|
|
||||||
# create base geometry 2D & 3D
|
# create base geometry 2D
|
||||||
vector = geompy.MakeVector(px, py)
|
vector = geompy.MakeVector(px, py)
|
||||||
arc = geompy.MakeArc(py, pz, px)
|
arc = geompy.MakeArc(py, pz, px)
|
||||||
|
|
||||||
# create base objects
|
# create base objects
|
||||||
angle = 45. * math.pi / 180
|
angle = 45. * math.pi / 180
|
||||||
WantPlanarFace = 1 #True
|
WantPlanarFace = True
|
||||||
wire = geompy.MakeWire([vector, arc])
|
wire = geompy.MakeWire([vector, arc])
|
||||||
face = geompy.MakeFace(wire, WantPlanarFace)
|
face = geompy.MakeFace(wire, WantPlanarFace)
|
||||||
face_rot = geompy.MakeRotation(face, vector, angle)
|
face_rot = geompy.MakeRotation(face, vector, angle)
|
||||||
|
|
||||||
# make sewing
|
# make sewing
|
||||||
@ -29,9 +28,9 @@ precision = 0.00001
|
|||||||
sewing = geompy.MakeSewing([face, face_rot], precision)
|
sewing = geompy.MakeSewing([face, face_rot], precision)
|
||||||
|
|
||||||
# add objects in the study
|
# add objects in the study
|
||||||
id_face = geompy.addToStudy(face, "Face")
|
id_face = geompy.addToStudy(face, "Face")
|
||||||
id_face_rot = geompy.addToStudy(face_rot, "Face rotation")
|
id_face_rot = geompy.addToStudy(face_rot, "Face rotation")
|
||||||
id_sewing = geompy.addToStudy(sewing, "Sewing")
|
id_sewing = geompy.addToStudy(sewing, "Sewing")
|
||||||
|
|
||||||
# display the results
|
# display the results
|
||||||
gg.createAndDisplayGO(id_face)
|
gg.createAndDisplayGO(id_face)
|
||||||
@ -40,3 +39,12 @@ gg.createAndDisplayGO(id_face_rot)
|
|||||||
gg.setDisplayMode(id_face_rot,1)
|
gg.setDisplayMode(id_face_rot,1)
|
||||||
gg.createAndDisplayGO(id_sewing)
|
gg.createAndDisplayGO(id_sewing)
|
||||||
gg.setDisplayMode(id_sewing,1)
|
gg.setDisplayMode(id_sewing,1)
|
||||||
|
|
||||||
|
|
||||||
|
# Example 2: make a shell of a multiply translated face
|
||||||
|
quad = geompy.MakeFaceHW( 10, 20, 1 )
|
||||||
|
quadCompound = geompy.MakeMultiTranslation1D( quad, geompy.MakeVectorDXDYDZ(1,0,0), 10, 3)
|
||||||
|
shell = geompy.Sew( quadCompound, 1e-6 )
|
||||||
|
|
||||||
|
id_shell = geompy.addToStudy( shell, "3 quads shell")
|
||||||
|
gg.createAndDisplayGO(id_shell)
|
||||||
|
@ -6,6 +6,8 @@ import GEOM
|
|||||||
from salome.geom import geomBuilder
|
from salome.geom import geomBuilder
|
||||||
geompy = geomBuilder.New(salome.myStudy)
|
geompy = geomBuilder.New(salome.myStudy)
|
||||||
|
|
||||||
|
# Variant 1: using DivideEdge()
|
||||||
|
|
||||||
# create vertices
|
# create vertices
|
||||||
p1 = geompy.MakeVertex(0,0,50)
|
p1 = geompy.MakeVertex(0,0,50)
|
||||||
p2 = geompy.MakeVertex(60,0,50)
|
p2 = geompy.MakeVertex(60,0,50)
|
||||||
@ -27,4 +29,15 @@ edge_points = geompy.SubShapeAllSortedCentres(divide, geompy.ShapeType["VERTEX"]
|
|||||||
for point in edge_points:
|
for point in edge_points:
|
||||||
geompy.addToStudyInFather(divide, point, "Edge's point after divide")
|
geompy.addToStudyInFather(divide, point, "Edge's point after divide")
|
||||||
|
|
||||||
|
|
||||||
|
# Variant 2: using DivideEdgeByPoint()
|
||||||
|
|
||||||
|
box = geompy.MakeBox(0,0,0, 10,10,10, theName="box")
|
||||||
|
p1 = geompy.MakeVertex( 3, -2, 1, theName="point 1 to project" )
|
||||||
|
p2 = geompy.MakeVertex( 7, -2, 1, theName="point 2 to project" )
|
||||||
|
edge = geompy.GetEdgeNearPoint( box, p1, theName="edge to split")
|
||||||
|
|
||||||
|
div = geompy.DivideEdgeByPoint( box, edge, [p1, p2], theName="box (edge divided)")
|
||||||
|
|
||||||
|
|
||||||
salome.sg.updateObjBrowser(1)
|
salome.sg.updateObjBrowser(1)
|
||||||
|
@ -30,17 +30,29 @@ sketcher2 = geompy.MakeSketcher("Sketcher:F 0 0:TT 70 0:TT 70 70:TT 0 70:WW")
|
|||||||
sketcher3 = geompy.MakeSketcher("Sketcher:F 20 20:TT 50 20:TT 50 50:TT 20 50:WW")
|
sketcher3 = geompy.MakeSketcher("Sketcher:F 20 20:TT 50 20:TT 50 50:TT 20 50:WW")
|
||||||
isPlanarFace = 1
|
isPlanarFace = 1
|
||||||
|
|
||||||
|
sphere = geompy.MakeSphereR(100)
|
||||||
|
box = geompy.MakeBoxDXDYDZ(200, 200, 200)
|
||||||
|
cut = geompy.MakeCutList(sphere, [box], True)
|
||||||
|
|
||||||
# create a face from the wire
|
# create a face from the wire
|
||||||
face1 = geompy.MakeFace(wire, isPlanarFace)
|
face1 = geompy.MakeFace(wire, isPlanarFace)
|
||||||
|
|
||||||
# create faces from two wires
|
# create faces from two wires
|
||||||
face2 = geompy.MakeFaceWires([wire, sketcher1],isPlanarFace)
|
face2 = geompy.MakeFaceWires([wire, sketcher1],isPlanarFace)
|
||||||
face3 = geompy.MakeFaces([sketcher2, sketcher3],isPlanarFace)
|
face3 = geompy.MakeFaces([sketcher2, sketcher3],isPlanarFace)
|
||||||
|
face4 = geompy.MakeFaceFromSurface(face1, sketcher1)
|
||||||
|
|
||||||
|
# create face from edges with constraints
|
||||||
|
face5 = geompy.MakeFaceWithConstraints([geompy.GetSubShape(cut, [5]), geompy.GetSubShape(cut, [3]),
|
||||||
|
geompy.GetSubShape(cut, [11]), geompy.GetSubShape(cut, [3]),
|
||||||
|
geompy.GetSubShape(cut, [13]), geompy.GetSubShape(cut, [3])])
|
||||||
|
|
||||||
# add objects in the study
|
# add objects in the study
|
||||||
id_face1 = geompy.addToStudy(face1,"Face1")
|
id_face1 = geompy.addToStudy(face1,"Face1")
|
||||||
id_face2 = geompy.addToStudy(face2,"Face2")
|
id_face2 = geompy.addToStudy(face2,"Face2")
|
||||||
id_face3 = geompy.addToStudy(face3,"Face3")
|
id_face3 = geompy.addToStudy(face3,"Face3")
|
||||||
|
id_face4 = geompy.addToStudy(face4,"Face4")
|
||||||
|
id_face5 = geompy.addToStudy(face5,"Face5")
|
||||||
|
|
||||||
# display the faces
|
# display the faces
|
||||||
gg.createAndDisplayGO(id_face1)
|
gg.createAndDisplayGO(id_face1)
|
||||||
@ -52,3 +64,9 @@ gg.setTransparency(id_face2,0.2)
|
|||||||
gg.createAndDisplayGO(id_face3)
|
gg.createAndDisplayGO(id_face3)
|
||||||
gg.setDisplayMode(id_face3,1)
|
gg.setDisplayMode(id_face3,1)
|
||||||
gg.setTransparency(id_face3,0.2)
|
gg.setTransparency(id_face3,0.2)
|
||||||
|
gg.createAndDisplayGO(id_face4)
|
||||||
|
gg.setDisplayMode(id_face4,1)
|
||||||
|
gg.setTransparency(id_face4,0.2)
|
||||||
|
gg.createAndDisplayGO(id_face5)
|
||||||
|
gg.setDisplayMode(id_face5,1)
|
||||||
|
gg.setTransparency(id_face5,0.2)
|
||||||
|
46
doc/salome/examples/topological_geom_objs_ex07.py
Normal file
@ -0,0 +1,46 @@
|
|||||||
|
# Creation of a Solid(s) from connected faces
|
||||||
|
|
||||||
|
import salome
|
||||||
|
salome.salome_init()
|
||||||
|
import GEOM
|
||||||
|
from salome.geom import geomBuilder
|
||||||
|
geompy = geomBuilder.New(salome.myStudy)
|
||||||
|
gg = salome.ImportComponentGUI("GEOM")
|
||||||
|
|
||||||
|
# create a box
|
||||||
|
box = geompy.MakeBoxDXDYDZ(200, 200, 200)
|
||||||
|
|
||||||
|
# make a copy of a box translated by X coordinate
|
||||||
|
box_translation = geompy.MakeTranslation(box, 200, 0, 0)
|
||||||
|
|
||||||
|
# extract shells from boxes
|
||||||
|
box_shell = geompy.SubShapeAllSorted(box, geompy.ShapeType["SHELL"])[0]
|
||||||
|
box_translation_shell = geompy.SubShapeAllSorted(box_translation, geompy.ShapeType["SHELL"])[0]
|
||||||
|
|
||||||
|
# extract faces from boxes
|
||||||
|
box_faces = geompy.SubShapeAllSorted(box, geompy.ShapeType["FACE"])
|
||||||
|
box_translation_faces = geompy.SubShapeAllSorted(box_translation, geompy.ShapeType["FACE"])
|
||||||
|
|
||||||
|
# create solids from shells
|
||||||
|
msf_shells_noint = geompy.MakeSolidFromConnectedFaces([box_shell, box_translation_shell],0)
|
||||||
|
msf_shells_int = geompy.MakeSolidFromConnectedFaces([box_shell, box_translation_shell], 1)
|
||||||
|
|
||||||
|
# create solids from faces
|
||||||
|
msf_faces_noint = geompy.MakeSolidFromConnectedFaces(box_faces+box_translation_faces, 0)
|
||||||
|
msf_faces_int = geompy.MakeSolidFromConnectedFaces(box_faces+box_translation_faces, 1)
|
||||||
|
|
||||||
|
# add objects in the study
|
||||||
|
id_solid_shells_noint = geompy.addToStudy(msf_shells_noint,"Solid_from_shells_no_intersect")
|
||||||
|
id_solid_shells_int = geompy.addToStudy(msf_shells_int,"Solid_from_shells_intersect")
|
||||||
|
id_solid_faces_noint = geompy.addToStudy(msf_faces_noint,"Solid_from_faces_no_intersect")
|
||||||
|
id_solid_faces_int = geompy.addToStudy(msf_faces_int,"Solid_from_faces_intersect")
|
||||||
|
|
||||||
|
# display the results
|
||||||
|
gg.createAndDisplayGO(id_solid_shells_noint)
|
||||||
|
gg.setDisplayMode(id_solid_shells_noint,1)
|
||||||
|
gg.createAndDisplayGO(id_solid_shells_int)
|
||||||
|
gg.setDisplayMode(id_solid_shells_int,1)
|
||||||
|
gg.createAndDisplayGO(id_solid_faces_noint)
|
||||||
|
gg.setDisplayMode(id_solid_faces_noint,1)
|
||||||
|
gg.createAndDisplayGO(id_solid_faces_int)
|
||||||
|
gg.setDisplayMode(id_solid_faces_int,1)
|
@ -2,7 +2,6 @@
|
|||||||
|
|
||||||
import salome
|
import salome
|
||||||
salome.salome_init()
|
salome.salome_init()
|
||||||
import GEOM
|
|
||||||
from salome.geom import geomBuilder
|
from salome.geom import geomBuilder
|
||||||
geompy = geomBuilder.New(salome.myStudy)
|
geompy = geomBuilder.New(salome.myStudy)
|
||||||
|
|
||||||
@ -25,24 +24,17 @@ projection = geompy.MakeProjection(curve, face_cyl)
|
|||||||
# add objects in the study
|
# add objects in the study
|
||||||
geompy.addToStudy(cylinder, "cylinder")
|
geompy.addToStudy(cylinder, "cylinder")
|
||||||
geompy.addToStudyInFather(cylinder, face_cyl, "face_cyl")
|
geompy.addToStudyInFather(cylinder, face_cyl, "face_cyl")
|
||||||
geompy.addToStudy(p1, "p1")
|
|
||||||
geompy.addToStudy(p2, "p2")
|
|
||||||
geompy.addToStudy(p3, "p3")
|
|
||||||
geompy.addToStudy(p4, "p4")
|
|
||||||
geompy.addToStudy(p5, "p5")
|
|
||||||
geompy.addToStudy(curve, "curve")
|
geompy.addToStudy(curve, "curve")
|
||||||
geompy.addToStudy(projection, "projection")
|
geompy.addToStudy(projection, "projection")
|
||||||
|
|
||||||
#projection of point on wire.
|
#projection of point on wire
|
||||||
e1 = geompy.MakeLineTwoPnt(p1, p2)
|
e1 = geompy.MakeLineTwoPnt(p1, p2)
|
||||||
e2 = geompy.MakeLineTwoPnt(p2, p3)
|
e2 = geompy.MakeLineTwoPnt(p2, p3)
|
||||||
|
|
||||||
w1 = geompy.MakeWire([e1, e2], 1.e-7)
|
w1 = geompy.MakeWire([e1, e2], 1.e-7)
|
||||||
v1 = geompy.MakeVertex(300, 40, 100)
|
v1 = geompy.MakeVertex(300, 40, 100)
|
||||||
|
|
||||||
prj = geompy.MakeProjectionOnWire(v1, w1)
|
prj = geompy.MakeProjection(v1, w1)
|
||||||
geompy.addToStudy(e1, "e1")
|
|
||||||
geompy.addToStudy(e2, "e2")
|
|
||||||
geompy.addToStudy(w1, "w1")
|
geompy.addToStudy(w1, "w1")
|
||||||
geompy.addToStudy(v1, "v1")
|
geompy.addToStudy(v1, "v1")
|
||||||
geompy.addToStudy(prj[1], "projOnWire")
|
geompy.addToStudy(prj, "projOnWire")
|
||||||
|
75
doc/salome/examples/transformation_operations_ex14.py
Normal file
@ -0,0 +1,75 @@
|
|||||||
|
# Extend Edge and Face
|
||||||
|
|
||||||
|
import salome
|
||||||
|
salome.salome_init()
|
||||||
|
import GEOM
|
||||||
|
from salome.geom import geomBuilder
|
||||||
|
geompy = geomBuilder.New(salome.myStudy)
|
||||||
|
gg = salome.ImportComponentGUI("GEOM")
|
||||||
|
|
||||||
|
# create vertices
|
||||||
|
p1 = geompy.MakeVertex( 0., 0., 0.)
|
||||||
|
p2 = geompy.MakeVertex(100., 100., 0.)
|
||||||
|
p3 = geompy.MakeVertex( 0., 100., 0.)
|
||||||
|
|
||||||
|
# create edges
|
||||||
|
edge1 = geompy.MakeEdge(p1, p2)
|
||||||
|
edge2 = geompy.MakeCircleR(100)
|
||||||
|
|
||||||
|
# create faces
|
||||||
|
face1 = geompy.MakePlaneThreePnt(p1, p2, p3, 200)
|
||||||
|
sphere1 = geompy.MakeSpherePntR(p1, 100)
|
||||||
|
faces2 = geompy.SubShapeAllSorted(sphere1, GEOM.FACE)
|
||||||
|
face2 = faces2[0]
|
||||||
|
|
||||||
|
# perform edge extension
|
||||||
|
resEdge1 = geompy.ExtendEdge(edge1, 0.2, 0.8)
|
||||||
|
resEdge2 = geompy.ExtendEdge(edge1, -0.3, 1.3)
|
||||||
|
resEdge3 = geompy.ExtendEdge(edge2, 0.5, 1)
|
||||||
|
resEdge4 = geompy.ExtendEdge(edge2, 0.2, 0.5)
|
||||||
|
|
||||||
|
# perform face extension
|
||||||
|
resFace1 = geompy.ExtendFace(face1, 0.2, 0.8, -0.3, 1.3)
|
||||||
|
resFace2 = geompy.ExtendFace(face1, 0, 0.5, 1, 2)
|
||||||
|
resFace3 = geompy.ExtendFace(face2, 0.2, 0.8, 0.3, 0.7)
|
||||||
|
resFace4 = geompy.ExtendFace(face2, 0.5, 1, 0.5, 1)
|
||||||
|
|
||||||
|
# add objects in the study
|
||||||
|
id_edge1 = geompy.addToStudy(edge1, "Edge 1")
|
||||||
|
id_edge2 = geompy.addToStudy(edge2, "Edge 2")
|
||||||
|
id_face1 = geompy.addToStudy(face1, "Face 1")
|
||||||
|
id_face2 = geompy.addToStudy(face2, "Face 2")
|
||||||
|
id_resEdge1 = geompy.addToStudy(resEdge1, "Extended Edge 1")
|
||||||
|
id_resEdge2 = geompy.addToStudy(resEdge2, "Extended Edge 1")
|
||||||
|
id_resEdge3 = geompy.addToStudy(resEdge3, "Extended Edge 2")
|
||||||
|
id_resEdge4 = geompy.addToStudy(resEdge4, "Extended Edge 3")
|
||||||
|
id_resFace1 = geompy.addToStudy(resFace1, "Extended Face 1")
|
||||||
|
id_resFace2 = geompy.addToStudy(resFace2, "Extended Face 2")
|
||||||
|
id_resFace3 = geompy.addToStudy(resFace3, "Extended Face 3")
|
||||||
|
id_resFace4 = geompy.addToStudy(resFace4, "Extended Face 4")
|
||||||
|
|
||||||
|
# display the prism and the results of chamfer operation
|
||||||
|
gg.createAndDisplayGO(id_edge1)
|
||||||
|
gg.setDisplayMode(id_edge1, 1)
|
||||||
|
gg.createAndDisplayGO(id_edge2)
|
||||||
|
gg.setDisplayMode(id_edge2, 1)
|
||||||
|
gg.createAndDisplayGO(id_face1)
|
||||||
|
gg.setDisplayMode(id_face1, 1)
|
||||||
|
gg.createAndDisplayGO(id_face2)
|
||||||
|
gg.setDisplayMode(id_face2, 1)
|
||||||
|
gg.createAndDisplayGO(id_resEdge1)
|
||||||
|
gg.setDisplayMode(id_resEdge1, 1)
|
||||||
|
gg.createAndDisplayGO(id_resEdge2)
|
||||||
|
gg.setDisplayMode(id_resEdge2, 1)
|
||||||
|
gg.createAndDisplayGO(id_resEdge3)
|
||||||
|
gg.setDisplayMode(id_resEdge3, 1)
|
||||||
|
gg.createAndDisplayGO(id_resEdge4)
|
||||||
|
gg.setDisplayMode(id_resEdge4, 1)
|
||||||
|
gg.createAndDisplayGO(id_resFace1)
|
||||||
|
gg.setDisplayMode(id_resFace1, 1)
|
||||||
|
gg.createAndDisplayGO(id_resFace2)
|
||||||
|
gg.setDisplayMode(id_resFace2, 1)
|
||||||
|
gg.createAndDisplayGO(id_resFace3)
|
||||||
|
gg.setDisplayMode(id_resFace3, 1)
|
||||||
|
gg.createAndDisplayGO(id_resFace4)
|
||||||
|
gg.setDisplayMode(id_resFace4, 1)
|
BIN
doc/salome/gui/GEOM/images/divedgebypoint.png
Normal file
After Width: | Height: | Size: 18 KiB |
Before Width: | Height: | Size: 42 KiB After Width: | Height: | Size: 38 KiB |
BIN
doc/salome/gui/GEOM/images/extend_edge_example.png
Normal file
After Width: | Height: | Size: 1.8 KiB |
BIN
doc/salome/gui/GEOM/images/extend_face_example.png
Normal file
After Width: | Height: | Size: 903 B |
BIN
doc/salome/gui/GEOM/images/extension1.png
Normal file
After Width: | Height: | Size: 22 KiB |
BIN
doc/salome/gui/GEOM/images/extension2.png
Normal file
After Width: | Height: | Size: 26 KiB |
BIN
doc/salome/gui/GEOM/images/filling.png
Executable file → Normal file
Before Width: | Height: | Size: 14 KiB After Width: | Height: | Size: 26 KiB |
BIN
doc/salome/gui/GEOM/images/flat_contents.png
Normal file
After Width: | Height: | Size: 12 KiB |
Before Width: | Height: | Size: 33 KiB After Width: | Height: | Size: 33 KiB |
Before Width: | Height: | Size: 20 KiB After Width: | Height: | Size: 22 KiB |
Before Width: | Height: | Size: 28 KiB After Width: | Height: | Size: 28 KiB |
Before Width: | Height: | Size: 10 KiB After Width: | Height: | Size: 11 KiB |
Before Width: | Height: | Size: 22 KiB After Width: | Height: | Size: 23 KiB |
Before Width: | Height: | Size: 26 KiB After Width: | Height: | Size: 27 KiB |
Before Width: | Height: | Size: 14 KiB After Width: | Height: | Size: 10 KiB |
Before Width: | Height: | Size: 3.4 KiB After Width: | Height: | Size: 4.1 KiB |
BIN
doc/salome/gui/GEOM/images/inspect_object.png
Normal file
After Width: | Height: | Size: 29 KiB |
Before Width: | Height: | Size: 20 KiB After Width: | Height: | Size: 32 KiB |
BIN
doc/salome/gui/GEOM/images/measures12.png
Normal file
After Width: | Height: | Size: 35 KiB |
BIN
doc/salome/gui/GEOM/images/neo-detect2.png
Executable file → Normal file
Before Width: | Height: | Size: 9.7 KiB After Width: | Height: | Size: 8.7 KiB |
Before Width: | Height: | Size: 20 KiB After Width: | Height: | Size: 23 KiB |
Before Width: | Height: | Size: 15 KiB After Width: | Height: | Size: 15 KiB |
BIN
doc/salome/gui/GEOM/images/neo-obj4_2.png
Normal file
After Width: | Height: | Size: 16 KiB |
BIN
doc/salome/gui/GEOM/images/neo-obj4_3.png
Normal file
After Width: | Height: | Size: 18 KiB |
BIN
doc/salome/gui/GEOM/images/neo-obj6.png
Executable file → Normal file
Before Width: | Height: | Size: 15 KiB After Width: | Height: | Size: 15 KiB |
BIN
doc/salome/gui/GEOM/images/neo-obj6_2.png
Normal file
After Width: | Height: | Size: 16 KiB |
Before Width: | Height: | Size: 26 KiB After Width: | Height: | Size: 22 KiB |
Before Width: | Height: | Size: 19 KiB After Width: | Height: | Size: 17 KiB |
Before Width: | Height: | Size: 20 KiB After Width: | Height: | Size: 21 KiB |
BIN
doc/salome/gui/GEOM/images/projection_dlg1.png
Normal file
After Width: | Height: | Size: 22 KiB |
BIN
doc/salome/gui/GEOM/images/projection_dlg2.png
Normal file
After Width: | Height: | Size: 22 KiB |
Before Width: | Height: | Size: 22 KiB After Width: | Height: | Size: 22 KiB |
BIN
doc/salome/gui/GEOM/images/repair1.png
Executable file → Normal file
Before Width: | Height: | Size: 30 KiB After Width: | Height: | Size: 27 KiB |
Before Width: | Height: | Size: 6.8 KiB After Width: | Height: | Size: 12 KiB |
BIN
doc/salome/gui/GEOM/images/repair6.png
Executable file → Normal file
Before Width: | Height: | Size: 19 KiB After Width: | Height: | Size: 21 KiB |
BIN
doc/salome/gui/GEOM/images/repair8.png
Executable file → Normal file
Before Width: | Height: | Size: 18 KiB After Width: | Height: | Size: 17 KiB |
Before Width: | Height: | Size: 10 KiB After Width: | Height: | Size: 18 KiB |
BIN
doc/salome/gui/GEOM/images/surface_from_face1.png
Normal file
After Width: | Height: | Size: 19 KiB |
BIN
doc/salome/gui/GEOM/images/surface_from_face_example.png
Normal file
After Width: | Height: | Size: 1.3 KiB |
BIN
doc/salome/gui/GEOM/images/transfer_data1.png
Normal file
After Width: | Height: | Size: 19 KiB |
BIN
doc/salome/gui/GEOM/images/transfer_data2.png
Normal file
After Width: | Height: | Size: 9.4 KiB |
@ -5,44 +5,66 @@
|
|||||||
\n To <b>Add Point on Edge</b> in the <b>Main Menu</b> select
|
\n To <b>Add Point on Edge</b> in the <b>Main Menu</b> select
|
||||||
<b>Repair - > Add Point on Edge</b>.
|
<b>Repair - > Add Point on Edge</b>.
|
||||||
|
|
||||||
\n This operation splits an edge in two new edges in accordance with the
|
This operation splits an edge in two or more new edges.
|
||||||
specified mode (by length or by parameter) and a value specifying the
|
This operation is available in <b>OCC Viewer</b> only.
|
||||||
position of the point on edge (for example val =0.5; mode =
|
|
||||||
by length). This operation is available in <b>OCC Viewer</b> only.
|
|
||||||
|
|
||||||
\n The \b Result will be a \b GEOM_Object.
|
The \b Result will be a \b GEOM_Object.
|
||||||
|
|
||||||
\n <b>TUI Command:</b> <em>geompy.DivideEdge(Shape, EdgeID, Value,
|
\n Location of a new vertex on a selected edge can be defined two ways:
|
||||||
IsByParameter)</em>
|
<ol>
|
||||||
- \em Shape is a shape which contains an edge to be divided
|
<li> We can specify a position (ranging from 0.0 to 1.0) of the
|
||||||
- \em EdgeID is the ID of the edge to be divided, if it is = -1,
|
vertex on the selected edge either by length or by parameter.
|
||||||
then \em Shape should be an edge itself
|
<p>
|
||||||
- \em Value is a value of parameter on edge or length parameter,
|
<b>TUI Command:</b> <em>geompy.DivideEdge(Shape, EdgeID, Value,
|
||||||
depending on \em IsByParameter.
|
IsByParameter)</em>
|
||||||
- \em IsByParameter is a boolean flag, specifying operation mode:
|
<ul>
|
||||||
- \c True: \em Value is treated as a curve parameter [0..1]
|
<li> \em Shape is a shape which contains an edge to be divided</li>
|
||||||
- \c False: \em Value is treated as a length parameter [0..1]
|
<li>\em EdgeID is the ID of the edge to be divided, if it is = -1,
|
||||||
|
then \em Shape should be an edge itself.</li>
|
||||||
|
<li> \em Value is a value of parameter on edge or length parameter,
|
||||||
|
depending on \em IsByParameter. </li>
|
||||||
|
<li> \em IsByParameter is a boolean flag, specifying operation mode:
|
||||||
|
- \c True: \em Value is treated as a curve parameter [0..1]
|
||||||
|
- \c False: \em Value is treated as a length parameter [0..1] </li>
|
||||||
|
</ul>
|
||||||
|
\b Arguments: Name + 1 Edge + 1 Value setting the position of
|
||||||
|
the point according to one of the selected modes.
|
||||||
|
|
||||||
<b>Arguments:</b> Name + 1 Edge + 1 Value setting the position of
|
The difference between "by parameter" and "by length" modes becomes
|
||||||
the point according to one of the selected modes.
|
apparent on the edges with irregular parametrization (for example,
|
||||||
|
b-splines which usually have irregular density by the length).
|
||||||
|
For example, value 0.5 "by length" on such edge will produce the point
|
||||||
|
in the middle of this edge (equidistant from both its ends); the same
|
||||||
|
0.5 value "by parameter" will result in the point situated closer to
|
||||||
|
one of the ends (depending on the actual parametrization).
|
||||||
|
|
||||||
The difference between "by parameter" and "by length" modes becomes
|
\image html repair8.png
|
||||||
apparent on the edges with irregular parametrization (for example,
|
\n\n
|
||||||
b-splines which usually have irregular density by the length).
|
</li>
|
||||||
For example, value 0.5 "by length" on such edge will produce the point
|
<li>We can select several points that will be projected to the selected
|
||||||
in the middle of this edge (equidistant from both its ends); the same
|
edge to find the location of new vertices.
|
||||||
0.5 value "by parameter" will result in the point situated closer to
|
<p>
|
||||||
one of the ends (depending on the actual parametrization).
|
<b>TUI Command:</b> <em>geompy.DivideEdgeByPoint(Shape, Edge, Points)</em>
|
||||||
|
<ul>
|
||||||
|
<li> \em Shape is a shape which contains an edge to be divided</li>
|
||||||
|
<li>\em Edge is an edge to be divided (or it's ID, if it is = -1,
|
||||||
|
then \em Shape should be an edge itself).</li>
|
||||||
|
<li> \em Points is a list of points to project to \a Edge. </li>
|
||||||
|
</ul>
|
||||||
|
\b Arguments: Name + 1 Edge + 1 or more Points.
|
||||||
|
|
||||||
\image html repair8.png
|
\image html divedgebypoint.png
|
||||||
|
|
||||||
|
</li>
|
||||||
|
</ol>
|
||||||
|
|
||||||
\n <b>Example:</b>
|
\n <b>Example:</b>
|
||||||
|
|
||||||
\image html image167.png "The initial edge"
|
\image html image167.png "The initial edge"
|
||||||
|
|
||||||
\image html image168.png "The edge split in two segments"
|
\image html image168.png "The edge split in two segments"
|
||||||
|
|
||||||
Our <b>TUI Scripts</b> provide you with useful examples of the use of
|
Our <b>TUI Scripts</b> provide you with useful examples of the use of
|
||||||
\ref tui_add_point_on_edge "Repairing Operations".
|
\ref tui_add_point_on_edge "Repairing Operations".
|
||||||
|
|
||||||
*/
|
*/
|
||||||
|
@ -8,7 +8,15 @@ This operation returns the angle in degrees between two lines or linear edges.
|
|||||||
|
|
||||||
If both objects are <b>vectors</b>, the angle is computed in accordance with their orientations, otherwise the minimum angle is computed.
|
If both objects are <b>vectors</b>, the angle is computed in accordance with their orientations, otherwise the minimum angle is computed.
|
||||||
|
|
||||||
\n <b>TUI Command:</b> <em>geompy.GetAngle(shape1, shape2),</em> where
|
\note This dialog supports navigation through the selectable objects (in OCC 3D viewer only):
|
||||||
|
- Scroll mouse wheel with pressed \em Ctrl key or press \em "S", \em "P" keys when input focus is
|
||||||
|
in the viewer to navigate between selectable objects.
|
||||||
|
- Press left mouse button to select an appropriate object to the dialog box.
|
||||||
|
.
|
||||||
|
For more details, please refer to the \em "Functionality common for OCC and VTK viewers" chapter
|
||||||
|
of the GUI module's documentation.
|
||||||
|
|
||||||
|
<b>TUI Command:</b> <em>geompy.GetAngle(shape1, shape2),</em> where
|
||||||
Shape1 and Shape2 are shapes between which the angle is computed.
|
Shape1 and Shape2 are shapes between which the angle is computed.
|
||||||
Another TUI command is <em>geompy.GetAngleRadians(shape1,shape2),</em>
|
Another TUI command is <em>geompy.GetAngleRadians(shape1,shape2),</em>
|
||||||
which returns the value of angle in radians.
|
which returns the value of angle in radians.
|
||||||
|
@ -7,7 +7,15 @@ geometrical object.
|
|||||||
|
|
||||||
\image html neo-basicprop.png
|
\image html neo-basicprop.png
|
||||||
|
|
||||||
\n<b>TUI Command:</b> <em>geompy.BasicProperties(Shape),</em> where
|
\note This dialog supports navigation through the selectable objects (in OCC 3D viewer only):
|
||||||
|
- Scroll mouse wheel with pressed \em Ctrl key or press \em "S", \em "P" keys when input focus is
|
||||||
|
in the viewer to navigate between selectable objects.
|
||||||
|
- Press left mouse button to select an appropriate object to the dialog box.
|
||||||
|
.
|
||||||
|
For more details, please refer to the \em "Functionality common for OCC and VTK viewers" chapter
|
||||||
|
of the GUI module's documentation.
|
||||||
|
|
||||||
|
<b>TUI Command:</b> <em>geompy.BasicProperties(Shape),</em> where
|
||||||
\em Shape is a shape whose properties are inquired.
|
\em Shape is a shape whose properties are inquired.
|
||||||
|
|
||||||
See also a \ref tui_basic_properties_page "TUI example".
|
See also a \ref tui_basic_properties_page "TUI example".
|
||||||
|
@ -10,7 +10,15 @@ The coordinates of two corners of its bounding box are shown in the table.
|
|||||||
|
|
||||||
Press \b Apply or <b>Apply and Close</b> button to publish the bounding \b Box in the study.
|
Press \b Apply or <b>Apply and Close</b> button to publish the bounding \b Box in the study.
|
||||||
|
|
||||||
\n <b>TUI Commands:</b> <em>[Xmin,Xmax, Ymin,Ymax, Zmin,Zmax] = geompy.BoundingBox(Shape, precise)</em>,
|
\note This dialog supports navigation through the selectable objects (in OCC 3D viewer only):
|
||||||
|
- Scroll mouse wheel with pressed \em Ctrl key or press \em "S", \em "P" keys when input focus is
|
||||||
|
in the viewer to navigate between selectable objects.
|
||||||
|
- Press left mouse button to select an appropriate object to the dialog box.
|
||||||
|
.
|
||||||
|
For more details, please refer to the \em "Functionality common for OCC and VTK viewers" chapter
|
||||||
|
of the GUI module's documentation.
|
||||||
|
|
||||||
|
<b>TUI Commands:</b> <em>[Xmin,Xmax, Ymin,Ymax, Zmin,Zmax] = geompy.BoundingBox(Shape, precise)</em>,
|
||||||
<em>BBox = geompy.MakeBoundingBox(Shape, precise)</em>, where \em Shape
|
<em>BBox = geompy.MakeBoundingBox(Shape, precise)</em>, where \em Shape
|
||||||
is the shape for which the bounding box is computed. \em precise TRUE
|
is the shape for which the bounding box is computed. \em precise TRUE
|
||||||
for precise computation; FALSE for fast one. Default value is False.
|
for precise computation; FALSE for fast one. Default value is False.
|
||||||
|
@ -9,7 +9,15 @@ the selected geometrical object.
|
|||||||
|
|
||||||
Press \b Apply or <b>Apply and Close</b> button to publish the \b Point in the study.
|
Press \b Apply or <b>Apply and Close</b> button to publish the \b Point in the study.
|
||||||
|
|
||||||
\n <b>TUI Command:</b> <em> geompy.MakeCDG(Shape),</em> where \em Shape is
|
\note This dialog supports navigation through the selectable objects (in OCC 3D viewer only):
|
||||||
|
- Scroll mouse wheel with pressed \em Ctrl key or press \em "S", \em "P" keys when input focus is
|
||||||
|
in the viewer to navigate between selectable objects.
|
||||||
|
- Press left mouse button to select an appropriate object to the dialog box.
|
||||||
|
.
|
||||||
|
For more details, please refer to the \em "Functionality common for OCC and VTK viewers" chapter
|
||||||
|
of the GUI module's documentation.
|
||||||
|
|
||||||
|
<b>TUI Command:</b> <em> geompy.MakeCDG(Shape),</em> where \em Shape is
|
||||||
the shape for which a center of gravity is computed.
|
the shape for which a center of gravity is computed.
|
||||||
|
|
||||||
See also a \ref tui_center_of_mass_page "TUI example".
|
See also a \ref tui_center_of_mass_page "TUI example".
|
||||||
|
@ -8,9 +8,16 @@ This operation checks the topology of the selected shape to detect self-intersec
|
|||||||
|
|
||||||
In this dialog:
|
In this dialog:
|
||||||
|
|
||||||
- \b Object - the checked object. \b Selection button allows picking it in the viewer or in the object browser.
|
- \b Object - the checked object. \b Selection button allows picking it in the viewer or in the object browser.
|
||||||
- \b Errors list contains the list of intersections. Select the intersection to show <b>Incriminated Sub-shapes</b> in the field to the right.
|
- <b>Level of check</b> - The combo box that allows to set the level of checking shape on self-interference.
|
||||||
|
It defines which interferferences will be checked. Default value is "All interferences".
|
||||||
|
- <b>Compute self-intersections</b> button computes self-interferences.
|
||||||
|
- \b Summary section contains the general report if the object has self-intersections and/or if errors are occured during computation.
|
||||||
|
- \b Self-intersections list contains the list of self-intersections detected.
|
||||||
|
Select the intersection(s) to show <b>Sub-shapes</b> in the field to the right.
|
||||||
|
- \b Apply and <b>Apply and Close</b> buttons are used to store interferences selected in the "Self-intersections" list box in the study for further analysis.
|
||||||
|
If no any interference is selected, all interferences are published in the study. Each interference is published as a child
|
||||||
|
compound of the source shape and contains a couple of intersecting sub-shapes.
|
||||||
|
|
||||||
\note This tool is useful for detection of shapes, not suitable for
|
\note This tool is useful for detection of shapes, not suitable for
|
||||||
arguments of Boolean operations and Partition algorithm.
|
arguments of Boolean operations and Partition algorithm.
|
||||||
@ -18,8 +25,10 @@ For more information about Partition and Boolean Operations Algorithms
|
|||||||
and their limitations refer to <a href="SALOME_BOA_PA.pdf">this document</a>.
|
and their limitations refer to <a href="SALOME_BOA_PA.pdf">this document</a>.
|
||||||
|
|
||||||
\n <b>Result:</b> Boolean.
|
\n <b>Result:</b> Boolean.
|
||||||
\n <b>TUI Command:</b> <em>geompy.CheckSelfIntersections(theShape),</em>
|
\n <b>TUI Command:</b> <em>geompy.CheckSelfIntersections(theShape, theCheckLevel = GEOM.SI_ALL),</em> \n
|
||||||
where \em theShape is the shape checked for validity.
|
where: \n
|
||||||
|
\em theShape is the shape checked for validity. \n
|
||||||
|
\em theCheckLevel is the level of check. Default value is GEOM.SI_ALL to check all interferences.
|
||||||
|
|
||||||
See also a \ref tui_check_self_intersections_page "TUI example".
|
See also a \ref tui_check_self_intersections_page "TUI example".
|
||||||
|
|
||||||
|
@ -25,7 +25,7 @@ By <b>Cartesian coordinates</b> , which can be either:
|
|||||||
- \b Relative coordinates \b DX, \b DY and \b DZ with respect to the previous applied point,
|
- \b Relative coordinates \b DX, \b DY and \b DZ with respect to the previous applied point,
|
||||||
|
|
||||||
By <b>Angular coordinates</b>, which include:
|
By <b>Angular coordinates</b>, which include:
|
||||||
- the \b Length of the segment and an \b Angle in the chosen plane (OXY for example) in \b Relative mode. The angle is then relative to a local coordinate system with the last point of the sketch as origin. </li>
|
- the \b Length of the segment and an \b Angle in the chosen plane (OXY for example) in \b Relative mode. The angle is then relative to a local coordinate system with the last point of the sketch as origin.
|
||||||
|
|
||||||
\image html 3dsketch_angle_rel.png
|
\image html 3dsketch_angle_rel.png
|
||||||
|
|
||||||
|
@ -16,6 +16,7 @@ geometrical objects as:
|
|||||||
<li>\subpage create_sketcher_page</li>
|
<li>\subpage create_sketcher_page</li>
|
||||||
<li>\subpage create_3dsketcher_page</li>
|
<li>\subpage create_3dsketcher_page</li>
|
||||||
<li>\subpage create_polyline_page</li>
|
<li>\subpage create_polyline_page</li>
|
||||||
|
<li>\subpage create_surface_from_face_page</li>
|
||||||
<li>\subpage create_vector_page</li>
|
<li>\subpage create_vector_page</li>
|
||||||
<li>\subpage create_plane_page</li>
|
<li>\subpage create_plane_page</li>
|
||||||
<li>\subpage create_lcs_page</li>
|
<li>\subpage create_lcs_page</li>
|
||||||
|
@ -2,49 +2,96 @@
|
|||||||
|
|
||||||
\page create_explode_page Explode
|
\page create_explode_page Explode
|
||||||
|
|
||||||
\n To \b Explode an object into sub-shapes, in the <b>Main Menu</b>
|
To \b Explode an object into sub-shapes, in the <b>Main Menu</b>
|
||||||
select <b>New Entity > Explode</b>.
|
select <b>New Entity > Explode</b>. This operation opens the
|
||||||
|
<b>Sub Shapes Selection</b> dialog box.
|
||||||
|
|
||||||
\n To create a list of sub-shapes (vertices, edges, wires etc.) of the
|
\image html neo-obj1.png
|
||||||
|
|
||||||
|
To create a list of sub-shapes (vertices, edges, wires etc.) of the
|
||||||
given shape using the \b Explode operation, you need to define the <b>Main
|
given shape using the \b Explode operation, you need to define the <b>Main
|
||||||
Object</b>, which will be exploded and the <b>Type of Sub-shapes</b> you wish to
|
Object</b>, which will be exploded and the <b>Type of Sub-shapes</b> you wish to
|
||||||
obtain from it.
|
obtain from it.
|
||||||
\n The \b Result of the operation will be a List of \b GEOM_Objects
|
|
||||||
|
The \b Result of the operation will be a List of \b GEOM_Objects
|
||||||
(vertexes, edges, wires, faces, shells or solids).
|
(vertexes, edges, wires, faces, shells or solids).
|
||||||
|
|
||||||
\n Using <b>TUI Commands</b> you can perform this operation in a
|
Available choices in the <b>Sub Shapes Type</b> combo box depend on the type
|
||||||
|
of selected <b>Main Object</b>:
|
||||||
|
- \b Compound: to extract compounds;
|
||||||
|
- \b Compsolid: to extract compsolids;
|
||||||
|
- \b Solid: to extract solids;
|
||||||
|
- \b Shell: to extract shells;
|
||||||
|
- \b Face: to extract faces;
|
||||||
|
- \b Wire: to extract wires;
|
||||||
|
- \b Edge: to extract edges;
|
||||||
|
- \b Vertex: to extract vertices;
|
||||||
|
- \b Shape: to extract top-level contents of the compound shape;
|
||||||
|
- \b Flat: to extract "flat" contents of the compound shape.
|
||||||
|
|
||||||
|
Note: "flat" contents means top-level simple-type sub-shapes extracted from
|
||||||
|
the compound object recursively (i.e. there is no compounds in the result).
|
||||||
|
For example, if a compound C1 contains a solid S1 and another compound C2 that
|
||||||
|
contains solids S2 and S3 (see picture below):
|
||||||
|
- Explode operation with \b Shape type given as parameter will return S1 and C2;
|
||||||
|
- Explode operation with \b Flat type given as parameter will return S1, S2 and S3.
|
||||||
|
|
||||||
|
\image html flat_contents.png
|
||||||
|
|
||||||
|
Switching on <b>Select Sub-shapes</b> check box allows manual selection of sub-shapes
|
||||||
|
to be extracted from the main object. In this mode the user can select sub-shapes
|
||||||
|
directly in 3D viewer.
|
||||||
|
|
||||||
|
When <b>Select Sub-shapes</b> check box is switched on, additional \b Filter controls
|
||||||
|
allow to automatically pick up entites which satisfy specified threshold value(s).
|
||||||
|
The numerical functor for each sub-shape that is compared with threshold value(s)
|
||||||
|
is computed according to the shape's topological properties:
|
||||||
|
- length for edges and wires
|
||||||
|
- area for faces and shells
|
||||||
|
- volume for solids, compounds, compsolids
|
||||||
|
|
||||||
|
Filtering capabilities are not available for vertices.
|
||||||
|
|
||||||
|
In order to filter out some entities:
|
||||||
|
- Activate one or two filtering controls by switching on corresponding check boxes;
|
||||||
|
- Select required threshold comparator type; the following choices are available:
|
||||||
|
- <b>Less Than</b> or <b>Equal or Less Than</b> for the first comparator;
|
||||||
|
- <b>Greater Than</b> or <b>Equal or Greater Than</b> for the second comparator;
|
||||||
|
- Enter required threshold value (values);
|
||||||
|
- Press \b Apply button in the \b Filter group.
|
||||||
|
|
||||||
|
The entities which satisfy entered filtering parameters will be automatically highlighted
|
||||||
|
in the 3D viewer.
|
||||||
|
|
||||||
|
Using <b>TUI Commands</b> you can perform this operation in a
|
||||||
variety of ways:
|
variety of ways:
|
||||||
<ul>
|
- <em>geompy.ExtractShapes(Shape, Type, isSorted)</em> explodes a
|
||||||
<li><em>geompy.ExtractShapes(Shape, Type, isSorted)</em> explodes a
|
Shape into sub-shapes of a given Type and returns a List of sub-shapes.
|
||||||
Shape into sub-shapes of a given Type and returns a List of sub-shapes.
|
This method does not return the Shape itself if it matches the
|
||||||
This method does not return the Shape itself if it matches the
|
Type.
|
||||||
Type.</li>
|
- <em>geompy.SubShapeAll(Shape, Type)</em> explodes a Shape on
|
||||||
<li><em>geompy.SubShapeAll(Shape, Type)</em> explodes a Shape on
|
sub-shapes of a given Type and returns a List of sub-shapes.
|
||||||
sub-shapes of a given Type and returns a List of sub-shapes.</li>
|
- <em>geompy.SubShapeAllIDs(Shape, Type)</em> explodes a Shape on
|
||||||
<li><em>geompy.SubShapeAllIDs(Shape, Type)</em> explodes a Shape on
|
sub-shapes of a given Type and returns a List of IDs of
|
||||||
sub-shapes of a given Type and returns a List of IDs of
|
sub-shapes.
|
||||||
sub-shapes.</li>
|
- <em>geompy.SubShapeAllSortedCentres(Shape, Type)</em> explodes a
|
||||||
<li><em>geompy.SubShapeAllSortedCentres(Shape, Type)</em> explodes a
|
shape on sub-shapes of a given type and sorts them taking into account
|
||||||
shape on sub-shapes of a given type and sorts them taking into account
|
their gravity centers, to provide a stable order of sub-shapes.
|
||||||
their gravity centers, to provide a stable order of sub-shapes.
|
It returns a list of sub-shapes.
|
||||||
It returns a list of sub-shapes.</li>
|
- <em>geompy.SubShapeAllSortedCentresIDs(Shape, Type)</em> explodes
|
||||||
<li><em>geompy.SubShapeAllSortedCentresIDs(Shape, Type)</em> explodes
|
a shape on sub-shapes of a given type and sorts them taking into
|
||||||
a shape on sub-shapes of a given type and sorts them taking into
|
account their gravity centers, to provide a stable order of sub-shapes.
|
||||||
account their gravity centers, to provide a stable order of sub-shapes.
|
It returns a List of IDs of sub-shapes.
|
||||||
It returns a List of IDs of sub-shapes.</li>
|
- <em>geompy.SubShape(Shape, Type, ListOfInd)</em> allows to obtain
|
||||||
<li><em>geompy.SubShape(Shape, Type, ListOfInd)</em> allows to obtain
|
a compound of sub-shapes of the Shape, selected by they indices in a
|
||||||
a compound of sub-shapes of the Shape, selected by they indices in a
|
list of all sub-shapes of the given Type. Each index is in the range
|
||||||
list of all sub-shapes of the given Type. Each index is in the range
|
[1, Nb_Sub-Shapes_Of_Given_Type].
|
||||||
[1, Nb_Sub-Shapes_Of_Given_Type].</li>
|
- <em>geompy.SubShapeSortedCentres(Shape, Type, ListOfInd)</em>
|
||||||
<li><em>geompy.SubShapeSortedCentres(Shape, Type, ListOfInd)</em>
|
allows to obtain a compound of sub-shapes of the Shape, selected by
|
||||||
allows to obtain a compound of sub-shapes of the Shape, selected by
|
they indices in sorted list of all sub-shapes of the given Type. Each
|
||||||
they indices in sorted list of all sub-shapes of the given Type. Each
|
index is in the range [1, Nb_Sub-Shapes_Of_Given_Type]
|
||||||
index is in the range [1, Nb_Sub-Shapes_Of_Given_Type]</li>
|
|
||||||
</ul>
|
|
||||||
|
|
||||||
\n <b>Arguments: </b>1 SHAPE + 1 type of SubShape.
|
<b>Arguments: </b>1 SHAPE + 1 type of SubShape.
|
||||||
|
|
||||||
\image html neo-obj1.png
|
|
||||||
|
|
||||||
<b>Example:</b>
|
<b>Example:</b>
|
||||||
|
|
||||||
|
@ -5,7 +5,10 @@
|
|||||||
To create a \b Face in the <b>Main Menu</b> select <b>New Entity - >
|
To create a \b Face in the <b>Main Menu</b> select <b>New Entity - >
|
||||||
Build - > Face</b>
|
Build - > Face</b>
|
||||||
|
|
||||||
\n To create a \b Face you need to select input shape(s). The list of
|
There are three algorithms to create a \b Face. In all cases the \b Result
|
||||||
|
of the operation will be a GEOM_Object (FACE).
|
||||||
|
|
||||||
|
\n Firstly, to create a \b Face you need to select input shape(s). The list of
|
||||||
input shapes can include shapes of any type except vertices; if the shapes are
|
input shapes can include shapes of any type except vertices; if the shapes are
|
||||||
neither wires nor edges, the algorithm extracts all edges from
|
neither wires nor edges, the algorithm extracts all edges from
|
||||||
the input shapes and works on the obtaineed edges.
|
the input shapes and works on the obtaineed edges.
|
||||||
@ -17,14 +20,44 @@ that can be interpreted as an outer one; other wires can be considered as
|
|||||||
inner ones.
|
inner ones.
|
||||||
\n Check <b>Try to create a planar face</b> to create a planar
|
\n Check <b>Try to create a planar face</b> to create a planar
|
||||||
face or nothing if it is impossible.
|
face or nothing if it is impossible.
|
||||||
\note Please note, that the resulting face can have a huge tolerance, if the initial wire has a big deviation from the plane. If the final tolerance exceeds 1e-06, a warning will be shown, but the face will be created and published in the study in a normal way. Using such faces can lead to failures or unpredictable results in most operations.
|
\note Please note, that the resulting face can have a huge tolerance, if
|
||||||
|
the initial wire has a big deviation from the plane. If the final tolerance
|
||||||
|
exceeds 1e-06, a warning will be shown, but the face will be created
|
||||||
|
and published in the study in a normal way. Using such faces can lead to failures
|
||||||
|
or unpredictable results in most operations.
|
||||||
|
|
||||||
\n The \b Result will be a \b GEOM_Object (FACE).
|
\n The \b Result will be a \b GEOM_Object (FACE).
|
||||||
|
|
||||||
\n <b>TUI Command:</b> <em>geompy.MakeFaceWires([list of Shapes], isPlanarWanted)</em>
|
\n <b>TUI Command:</b> <em>geompy.MakeFaceWires([list of Shapes], isPlanarWanted)</em>
|
||||||
\n <b>Arguments:</b> Name + 1 wire.
|
\n <b>Arguments:</b> Name + 1 wire.
|
||||||
|
|
||||||
\image html neo-obj4.png
|
\image html neo-obj4.png "Create face by input shape(s)"
|
||||||
|
|
||||||
|
\n Secondly, it is possible to create a face based on another face's surface and bounded by a wire.
|
||||||
|
|
||||||
|
\n The \b Result will be a \b GEOM_Object (FACE).
|
||||||
|
|
||||||
|
\n <b>TUI Command:</b> <em>geompy.MakeFaceFromSurface(theFace, theWire)</em>
|
||||||
|
\n <b>Arguments:</b> Name + 1 face + 1 wire.
|
||||||
|
|
||||||
|
\image html neo-obj4_2.png "Create face by another face's surface"
|
||||||
|
|
||||||
|
Thirdly, it is possible to create a \b Face by specifying a set of edges forming a closed wire
|
||||||
|
and constraints:
|
||||||
|
- Specify an input wire by selecting it in the object browser or in the viewer.
|
||||||
|
The input wire will be exploded on edges which will be shown in the \b Constraints list box.
|
||||||
|
- Specify constraints by associating faces with the edges.
|
||||||
|
|
||||||
|
\note Please note, that the constraint face must be connected to a reference edge.
|
||||||
|
|
||||||
|
\n The \b Result will be a \b GEOM_Object (FACE).
|
||||||
|
|
||||||
|
\n <b>TUI Command:</b> <em>geompy.MakeFaceWithConstraints([List of constraints])</em>
|
||||||
|
\n <b>Arguments:</b> Name + List of input edges and constraint faces. If a constraint
|
||||||
|
face is missing for some edge, this means that there is no constraint associated to this edge.
|
||||||
|
\note Set of edges should form a closed wire.
|
||||||
|
|
||||||
|
\image html neo-obj4_3.png "Create face by a wire and its constraints"
|
||||||
|
|
||||||
\n <b>Example:</b>
|
\n <b>Example:</b>
|
||||||
|
|
||||||
@ -34,7 +67,7 @@ face or nothing if it is impossible.
|
|||||||
|
|
||||||
\image html facesn3.png "Examples of faces"
|
\image html facesn3.png "Examples of faces"
|
||||||
|
|
||||||
Our <b>TUI Scripts</b> provide you with useful examples of creation of
|
Our <b>TUI Scripts</b> provide you with useful examples of creation of
|
||||||
\ref tui_creation_face "Advanced Geometric Objects".
|
\ref tui_creation_face "Advanced Geometric Objects".
|
||||||
|
|
||||||
*/
|
*/
|
||||||
|
@ -6,19 +6,18 @@ To generate a \b Filling in the <b>Main Menu</b> select <b>New Entity - > Genera
|
|||||||
|
|
||||||
To create a curvilinear face from several edges you need to define the
|
To create a curvilinear face from several edges you need to define the
|
||||||
following parameters:
|
following parameters:
|
||||||
\n <b>Input Compound</b> - the list of edges/wires used for creation
|
\n <b>Input Contours</b> - the list of edges/wires to use for creation
|
||||||
of the surface. To prepare for the filling each wire of the compound
|
of the surface. You can select either several edges/wires or a
|
||||||
is converted to an edge created on a BSpline curve built using curves
|
compound of them. To prepare for the filling, each input wire
|
||||||
from all edges of the wire.
|
is converted into a single BSpline curve by concatenating its edges.
|
||||||
\n \b Minimum and <b>Maximum Degree</b> of equation of the resulting
|
\n \b Minimum and <b>Maximum Degree</b> of equation of the resulting
|
||||||
BSpline or Besier curves describing the surface;
|
BSpline or Besier curves describing the surface.
|
||||||
\n \b Tolerance for \b 2D and for \b 3D - minimum distance between the
|
\n \b Tolerance for \b 2D and for \b 3D - minimum distance between the
|
||||||
created surface and the reference edge;
|
created surface and the input contours.
|
||||||
\n <b>Number of Iterations</b> - defines the maximum number of iterations. The
|
\n <b>Number of Iterations</b> - defines the maximum number of iterations. The
|
||||||
iterations are repeated until the required tolerance is reached. So, a
|
iterations are repeated until the required tolerance is reached. So, a
|
||||||
greater number of iterations allows producing a better surface.
|
greater number of iterations allows producing a better surface.
|
||||||
\n <b>Method</b> - Kind of method to perform filling operation
|
\n <b>Method</b> - Kind of method to perform filling operation
|
||||||
|
|
||||||
<ol>
|
<ol>
|
||||||
<li>Default - the standard behaviour.</li>
|
<li>Default - the standard behaviour.</li>
|
||||||
<li>Use edges orientation - the edges orientation is used: if an edge is
|
<li>Use edges orientation - the edges orientation is used: if an edge is
|
||||||
@ -28,7 +27,7 @@ algorithm.</li>
|
|||||||
minimize the sum of distances between ends points of edges.</li>
|
minimize the sum of distances between ends points of edges.</li>
|
||||||
</ol>
|
</ol>
|
||||||
|
|
||||||
\n <b>Approximation</b> - if checked, BSpline curves are generated in
|
<b>Approximation</b> - if checked, BSpline curves are generated in
|
||||||
the process of surface construction (using
|
the process of surface construction (using
|
||||||
GeomAPI_PointsToBSplineSurface functionality). By default the surface
|
GeomAPI_PointsToBSplineSurface functionality). By default the surface
|
||||||
is created using Besier curves. The usage of <b>Approximation</b>
|
is created using Besier curves. The usage of <b>Approximation</b>
|
||||||
@ -36,21 +35,29 @@ slows the algorithm, but allows building the surface for complex cases.
|
|||||||
|
|
||||||
\n The \b Result of the operation will be a GEOM_Object (face).
|
\n The \b Result of the operation will be a GEOM_Object (face).
|
||||||
|
|
||||||
\n <b>TUI Command:</b> <em>geompy.MakeFilling(Edges, MinDegree, MaxDegree, Tol2D, Tol3D, NbIter)</em>
|
\n <b>TUI Command:</b> <em>geompy.MakeFilling(Contours, MinDegree, MaxDegree, Tol2D, Tol3D, NbIter)</em><br>
|
||||||
\n <b>Arguments:</b> Name + 1 List of edges + 7 Parameters
|
<b>Arguments:</b> List/compound of edges/wires + 7 Parameters
|
||||||
(Min. degree, Max. degree, Number of iterations, 2D tolerance, 3D
|
(Min. degree, Max. degree, 2D tolerance, 3D tolerance, Number of
|
||||||
tolerance, Number of iterations, Method, Approximation).
|
iterations, Method, Approximation).
|
||||||
\n <b>Advanced options</b> \ref preview_anchor "Preview"
|
\n <b>Advanced options:</b> \ref preview_anchor "Preview"
|
||||||
|
|
||||||
\image html filling.png
|
\image html filling.png
|
||||||
|
|
||||||
|
\note This dialog supports navigation through the selectable objects (in OCC 3D viewer only):
|
||||||
|
- Scroll mouse wheel with pressed \em Ctrl key or press \em "S", \em "P" keys when input focus is
|
||||||
|
in the viewer to navigate between selectable objects.
|
||||||
|
- Press left mouse button to select an appropriate object to the dialog box.
|
||||||
|
.
|
||||||
|
For more details, please refer to the \em "Functionality common for OCC and VTK viewers" chapter
|
||||||
|
of the GUI module's documentation.
|
||||||
|
|
||||||
<b>Example:</b>
|
<b>Example:</b>
|
||||||
|
|
||||||
\image html filling_compoundsn.png "Initial edges"
|
\image html filling_compoundsn.png "Initial edges"
|
||||||
|
|
||||||
\image html fillingsn.png "Resulting surface"
|
\image html fillingsn.png "Resulting surface"
|
||||||
|
|
||||||
Our <b>TUI Scripts</b> provide you with useful examples of creation of
|
Sample <b>TUI Scripts</b> provide you with useful examples of creation of
|
||||||
\ref tui_creation_filling "Complex Geometric Objects".
|
\ref tui_creation_filling "Complex Geometric Objects".
|
||||||
|
|
||||||
*/
|
*/
|
||||||
|
@ -53,8 +53,8 @@ projected on the given edge to produce the resulting point.
|
|||||||
projected point.
|
projected point.
|
||||||
\image html point3_2.png
|
\image html point3_2.png
|
||||||
|
|
||||||
\n Fourthly, we can define a point by intersection of two \b Lines or \b Wires (or a Wire and a Line).
|
\n Fourthly, we can define a point by intersection of two \b Lines or \b Wires (or a Wire and a Line).
|
||||||
If they intersect only once, a point will be created. If there are several intersections, a compound of points will be created. The type of the selected object (Line or Wire) can be changed in the popup menu, after clicking the corresponding selection button.
|
If they intersect only once, a point will be created. If there are several intersections, a compound of points will be created.
|
||||||
\n <b>TUI Command:</b> <em>geompy.MakePointOnLinesIntersection(myLine1,myWire1).</em>
|
\n <b>TUI Command:</b> <em>geompy.MakePointOnLinesIntersection(myLine1,myWire1).</em>
|
||||||
\n <b>Arguments:</b> Name + 2 1D objects
|
\n <b>Arguments:</b> Name + 2 1D objects
|
||||||
|
|
||||||
@ -75,6 +75,14 @@ The position of the point on it can be defined in one of two ways:
|
|||||||
|
|
||||||
\image html point5_2.png
|
\image html point5_2.png
|
||||||
|
|
||||||
|
\note This dialog supports navigation through the selectable objects (in OCC 3D viewer only):
|
||||||
|
- Scroll mouse wheel with pressed \em Ctrl key or press \em "S", \em "P" keys when input focus is
|
||||||
|
in the viewer to navigate between selectable objects.
|
||||||
|
- Press left mouse button to select an appropriate object to the dialog box.
|
||||||
|
.
|
||||||
|
For more details, please refer to the \em "Functionality common for OCC and VTK viewers" chapter
|
||||||
|
of the GUI module's documentation.
|
||||||
|
|
||||||
<b>Example:</b>
|
<b>Example:</b>
|
||||||
|
|
||||||
\image html points.png "Points by edge and parameter and by coordinates"
|
\image html points.png "Points by edge and parameter and by coordinates"
|
||||||
|
@ -2,24 +2,40 @@
|
|||||||
|
|
||||||
\page create_solid_page Solid
|
\page create_solid_page Solid
|
||||||
|
|
||||||
\n To create a \b Solid in the <b>Main Menu</b> select <b>New Entity - > Build - >
|
To create a \b Solid in the <b>Main Menu</b> select <b>New Entity - > Build - >
|
||||||
Solid</b>.
|
Solid</b>.
|
||||||
|
|
||||||
You can create a \b Solid from a list of shells.
|
Firstly, you can create a \b Solid from a list of shells.
|
||||||
|
|
||||||
The \b Result will be a \b GEOM_Object (SOLID).
|
The \b Result will be a \b GEOM_Object (SOLID).
|
||||||
|
|
||||||
\n <b>TUI Command:</b> <em>geompy.MakeSolid(ListOfShape),</em> where
|
<b>TUI Command:</b> <em>geompy.MakeSolid(ListOfShape),</em> where
|
||||||
ListOfShape is a list of shells from which the solid is constructed.
|
\c ListOfShape is a list of shells from which the solid is constructed.
|
||||||
\n <b>Arguments:</b> Name + A closed shell or a list of closed shells.
|
|
||||||
|
<b>Arguments:</b> Name + A closed shell or a list of closed shells.
|
||||||
|
|
||||||
\image html neo-obj6.png
|
\image html neo-obj6.png
|
||||||
|
|
||||||
\n <b>Example:</b>
|
<b>Example:</b>
|
||||||
|
|
||||||
\image html solidsn.png "Solid"
|
\image html solidsn.png "Solid"
|
||||||
|
|
||||||
|
Secondly, it is possible to create a \b Solid (or a compound of solids) from a list of
|
||||||
|
connected faces or shells.
|
||||||
|
|
||||||
|
The \b Result will be a \b GEOM_Object (SOLID or COMPOUND).
|
||||||
|
|
||||||
|
<b>TUI Command:</b> <em>geompy.MakeSolidFromConnectedFaces(ListOfShape, isIntersect),</em> where
|
||||||
|
\c ListOfShape is a list of faces and/or shells from which the solid is constructed and
|
||||||
|
\c isIntersect is a boolean flag which, when set to \c True, forces performing intersection/sewing
|
||||||
|
between arguments
|
||||||
|
|
||||||
|
<b>Arguments:</b> Name + A set of connected faces and/or shells + Boolean flag.
|
||||||
|
|
||||||
|
\image html neo-obj6_2.png
|
||||||
|
|
||||||
Our <b>TUI Scripts</b> provide you with useful examples of creation of
|
Our <b>TUI Scripts</b> provide you with useful examples of creation of
|
||||||
\ref tui_creation_solid "Advanced Geometric Objects".
|
\ref tui_creation_solid "Solid from shell" and
|
||||||
|
\ref tui_creation_solid_from_faces "Solid from connected faces".
|
||||||
|
|
||||||
*/
|
*/
|
||||||
|
27
doc/salome/gui/GEOM/input/creating_surface_from_face.doc
Normal file
@ -0,0 +1,27 @@
|
|||||||
|
/*!
|
||||||
|
|
||||||
|
\page create_surface_from_face_page Surface From Face
|
||||||
|
|
||||||
|
To create a <b>Surface From Face</B> in the <b>Main Menu</b> select <b>New Entity - > Basic - > Surface From Face</b>
|
||||||
|
|
||||||
|
\n This function takes some face as input parameter and creates new
|
||||||
|
GEOM_Object, i.e. topological shape by extracting underlying surface
|
||||||
|
of the source face and limiting it by the Umin, Umax, Vmin, Vmax
|
||||||
|
parameters of the source face (in the parametrical space).
|
||||||
|
\n
|
||||||
|
\ref restore_presentation_parameters_page "Advanced options".
|
||||||
|
|
||||||
|
\n <b>TUI Command:</b> <em>geompy.MakeSurfaceFromFace(theFace)</em>,
|
||||||
|
where \em theFace the input face.
|
||||||
|
\n <b>Arguments:</b> Name + Object (Face).
|
||||||
|
|
||||||
|
\image html surface_from_face1.png "Surface From Face"
|
||||||
|
|
||||||
|
\n <b>Example:</b>
|
||||||
|
|
||||||
|
\image html surface_from_face_example.png "Original Face (white) and Created Surface"
|
||||||
|
|
||||||
|
Our <b>TUI Scripts</b> provide you with useful examples of the use of
|
||||||
|
\ref tui_creation_surface "Surface From Face" creation.
|
||||||
|
|
||||||
|
*/
|
@ -86,7 +86,7 @@ Buttons marked with small downward triangles have extended
|
|||||||
functionality which can be accessed by locking on them with left
|
functionality which can be accessed by locking on them with left
|
||||||
mouse button.
|
mouse button.
|
||||||
|
|
||||||
\image tree_tool_bar
|
\image html tree_tool_bar.png
|
||||||
|
|
||||||
<b>Dump View</b> - exports the current scene in bmp, png or jpeg image format.
|
<b>Dump View</b> - exports the current scene in bmp, png or jpeg image format.
|
||||||
\image html tree_view_dump.png
|
\image html tree_view_dump.png
|
||||||
|
58
doc/salome/gui/GEOM/input/extension_operation.doc
Normal file
@ -0,0 +1,58 @@
|
|||||||
|
/*!
|
||||||
|
|
||||||
|
\page extension_operation_page Extension of an Edge or a Face
|
||||||
|
|
||||||
|
\n To produce an \b Extension in the <b>Main Menu</b> select
|
||||||
|
<b>Operations - > Transformation - > Extension</b>
|
||||||
|
|
||||||
|
\n This operation resizes an \b Edge by means of first
|
||||||
|
and last parameters modification or a \b Face by means of modification
|
||||||
|
of minimal and maximal U- and V-Parameters. \n
|
||||||
|
\ref restore_presentation_parameters_page "Advanced options".
|
||||||
|
|
||||||
|
The type of extension is defined using the radio buttons.
|
||||||
|
|
||||||
|
Firstly it is possible to resize an \b Edge.
|
||||||
|
\n <b>TUI Command:</b> <em>geompy.ExtendEdge(theEdge, theMin, theMax)</em>,
|
||||||
|
where \em theEdge the input edge to be resized, \em theMin the minimal
|
||||||
|
parameter value, \em theMax the maximal parameter value.
|
||||||
|
\n <b>Arguments:</b> Name + Object (Edge) + 2 values (Min and Max Parameters).
|
||||||
|
|
||||||
|
\image html extension1.png "Extension of an Edge"
|
||||||
|
|
||||||
|
\n <b>Example:</b>
|
||||||
|
|
||||||
|
\image html extend_edge_example.png "Original edge (white) and extended edge"
|
||||||
|
|
||||||
|
\note The input Edge parameters range is [0, 1]. If \b theMin parameter is
|
||||||
|
negative, the input Edge is extended, otherwise it is shrinked by
|
||||||
|
\b theMin parameter. If \b theMax is greater than 1, the Edge is
|
||||||
|
extended, otherwise it is shrinked by \b theMax parameter.
|
||||||
|
|
||||||
|
Secondly it is possible to resize a \b Face.
|
||||||
|
\n <b>TUI Command:</b> <em>geompy.ExtendFace(theFace, theUMin, theUMax,
|
||||||
|
theVMin, theVMax)</em>, where \em theFace the input face to be resized,
|
||||||
|
\em theUMin the minimal U-Parameter value, \em theUMax the maximal U-Parameter
|
||||||
|
value, \em theVMin the minimal V-Parameter value, \em theVMax the maximal
|
||||||
|
V-Parameter value.
|
||||||
|
\n <b>Arguments:</b> Name + Object (Face) + 4 values (Min and Max U- and
|
||||||
|
V-Parameters).
|
||||||
|
|
||||||
|
\image html extension2.png "Extension of a Face"
|
||||||
|
|
||||||
|
\n <b>Example:</b>
|
||||||
|
|
||||||
|
\image html extend_face_example.png "The original face (gray) and a result
|
||||||
|
face shrinked along U-Direction and extended along V-Direction"
|
||||||
|
|
||||||
|
\note The input Face U- and V-Parameters range is [0, 1]. If \b theUMin
|
||||||
|
parameter is negative, the input Face is extended, otherwise it is
|
||||||
|
shrinked along U-Direction by \b theUMin parameter. If theUMax is
|
||||||
|
greater than 1, the Face is extended, otherwise it is shrinked along
|
||||||
|
U-Direction by \b theUMax parameter. So as for \b theVMin, \b theVMax
|
||||||
|
and V-Direction of the input Face.
|
||||||
|
|
||||||
|
Our <b>TUI Scripts</b> provide you with useful examples of the use of
|
||||||
|
\ref tui_extend "Extension Operations".
|
||||||
|
|
||||||
|
*/
|
61
doc/salome/gui/GEOM/input/fast_intersection.doc
Normal file
@ -0,0 +1,61 @@
|
|||||||
|
/*!
|
||||||
|
\page fast_intersection_page Fast intersection
|
||||||
|
|
||||||
|
This operation checks whether or not two selected shapes are overlapped.
|
||||||
|
|
||||||
|
This tool is useful for fast detection of intersections and gaps.
|
||||||
|
In contrast to Boolean Operations, Partition and Detect Self-intersection
|
||||||
|
algorithms that compute topological intersections, this algoritm computes
|
||||||
|
intersections by generating tessellation (triangulation) of the source
|
||||||
|
shapes and detecting overlapping of resulting meshes. High performance is
|
||||||
|
achieved through the use of existing triangulation of faces.
|
||||||
|
Due to this fact, the tool is not suitable for computing exact intersection
|
||||||
|
of shapes; however, it can be used to quickly find zones where
|
||||||
|
intersections can present, and then use these results in further analysis.
|
||||||
|
|
||||||
|
\note For more information about Partition and Boolean Operations Algorithms
|
||||||
|
and their limitations refer to <a href="SALOME_BOA_PA.pdf">this document</a>.
|
||||||
|
|
||||||
|
\image html measures12.png
|
||||||
|
|
||||||
|
\note This dialog supports navigation through the selectable objects (in OCC 3D viewer only):
|
||||||
|
- Scroll mouse wheel with pressed \em Ctrl key or press \em "S", \em "P" keys when input focus is
|
||||||
|
in the viewer to navigate between selectable objects.
|
||||||
|
- Press left mouse button to select an appropriate object to the dialog box.
|
||||||
|
.
|
||||||
|
For more details, please refer to the \em "Functionality common for OCC and VTK viewers" chapter
|
||||||
|
of the GUI module's documentation.
|
||||||
|
|
||||||
|
In this dialog:
|
||||||
|
|
||||||
|
- \b Object 1 - first checked object. \b Selection button allows picking it in the viewer or in the object browser.
|
||||||
|
- \b Object 2 - second checked object. \b Selection button allows picking it in the viewer or in the object browser.
|
||||||
|
- <b>Deflection coefficient</b> specifies the quality of shapes tessellation.
|
||||||
|
- <b>Detect gaps</b> - when switched on, allows detecting gaps between shapes.
|
||||||
|
- <b>Tolerance</b> - specifies a distance between shapes used for detecting gaps.
|
||||||
|
- <b>Compute intersections</b> - press this button to compute interferences.
|
||||||
|
- <b>Sub-shapes of Object 1</b> - list of sub-shapes from the first source shape that localize the intersection.
|
||||||
|
- <b>Sub-shapes of Object 2</b> - list of sub-shapes from the second source shape that localize the intersection.
|
||||||
|
- \b Apply and <b>Apply and Close</b> buttons are used to store selected intersected shapes in the study for
|
||||||
|
further analysis (see below).
|
||||||
|
|
||||||
|
\note Quality of the result depends on the quality of triangulation. Changing a value of the deflection coefficient
|
||||||
|
parameter can strongly affect the result. On the other hand, small values of deflection coefficient might lead to
|
||||||
|
some performance loss of the algorithm, as number of triangles of the tesselation mesh depends on this parameter.
|
||||||
|
|
||||||
|
It is possible to store sub-shapes selected by the user in the study, for the further analysis.
|
||||||
|
The selection will be published as a compound containing intersected sub-shapes from both source objects.
|
||||||
|
|
||||||
|
<b>TUI Command:</b> <em>geompy.FastIntersect(theShape1, theShape2, theTolerance = 0.0, theDeflection = 0.001),</em> \n
|
||||||
|
where:
|
||||||
|
- \em theShape1 First shape.
|
||||||
|
- \em theShape2 Second shape.
|
||||||
|
- \em theTolerance When it is negative or equal to zero, the function detects intersections;
|
||||||
|
when it is positive, the function detects gaps.
|
||||||
|
- \em theDeflection Linear deflection for shapes; if deflection <= 0, default deflection 0.001 is used
|
||||||
|
|
||||||
|
<b>Result:</b> Boolean + two lists of IDs of sub-shapes (from input shapes) that localize the intersection.
|
||||||
|
|
||||||
|
See also a \ref tui_fast_intersection_page "TUI example".
|
||||||
|
|
||||||
|
*/
|
@ -8,6 +8,8 @@ A free face is a face, which is not shared between several sub-shapes of the sha
|
|||||||
|
|
||||||
\image html repair10.png
|
\image html repair10.png
|
||||||
|
|
||||||
|
Press \b Apply or <b>Apply and Close</b> button to publish the corresponding faces in the study.
|
||||||
|
|
||||||
<b>TUI Command:</b> <em>GetFreeFacesIDs(Shape),</em> where \em Shape is
|
<b>TUI Command:</b> <em>GetFreeFacesIDs(Shape),</em> where \em Shape is
|
||||||
a shape to be checked.
|
a shape to be checked.
|
||||||
|
|
||||||
@ -15,4 +17,4 @@ a shape to be checked.
|
|||||||
|
|
||||||
See also a \ref tui_free_faces_page "TUI example".
|
See also a \ref tui_free_faces_page "TUI example".
|
||||||
|
|
||||||
*/
|
*/
|
||||||
|
@ -7,7 +7,7 @@
|
|||||||
\n This operation glues edges that are coincident with respect to the
|
\n This operation glues edges that are coincident with respect to the
|
||||||
given tolerance value.
|
given tolerance value.
|
||||||
|
|
||||||
\n <b>Arguments:</b> Name + Compound of shapes + Tolerance value.
|
\n <b>Arguments:</b> Name + Shapes + Tolerance value.
|
||||||
\n <b>Advanced option:</b>
|
\n <b>Advanced option:</b>
|
||||||
\ref restore_presentation_parameters_page "Set presentation parameters and sub-shapes from arguments".
|
\ref restore_presentation_parameters_page "Set presentation parameters and sub-shapes from arguments".
|
||||||
\n The \b Result will be a \b GEOM_Object.
|
\n The \b Result will be a \b GEOM_Object.
|
||||||
@ -16,10 +16,10 @@ given tolerance value.
|
|||||||
\image html glue4.png
|
\image html glue4.png
|
||||||
|
|
||||||
\n <b>TUI Command:</b>
|
\n <b>TUI Command:</b>
|
||||||
\n <em>geompy.MakeGlueEdges(theShape,theTolerance)</em>,
|
<p><em>geompy.MakeGlueEdges( theShapes, theTolerance )</em>,
|
||||||
\n where \em theShape is a compound of shapes to be glued, and \em
|
\n where \em theShapes is either a list or compound of shapes to be
|
||||||
theTolerance is a maximum distance between two faces/edges, which can
|
glued, and \em theTolerance is a maximum distance between two
|
||||||
be considered as coincident.
|
edges, which can be considered as coincident.
|
||||||
|
|
||||||
\n It is also possible to manually select the edges that will be
|
\n It is also possible to manually select the edges that will be
|
||||||
glued - select the shape, specify the tolerance and press \b Detect button.
|
glued - select the shape, specify the tolerance and press \b Detect button.
|
||||||
@ -36,23 +36,24 @@ possible to select the edges for gluing in the 3D viewer.
|
|||||||
The selected edges will be marked in white.
|
The selected edges will be marked in white.
|
||||||
|
|
||||||
\n <b>TUI Command:</b>
|
\n <b>TUI Command:</b>
|
||||||
\n <em>geompy.GetGlueEdges(theShape,theTolerance)</em>,
|
<p><em>geompy.GetGlueEdges( theShapes, theTolerance )</em>,
|
||||||
\n where \em theShape is a compound of shapes to be glued, \em
|
\n where \em theShape is either a list or compound of shapes to be glued, \em
|
||||||
theTolerance is a maximum distance between two edges, which can
|
theTolerance is a maximum distance between two edges, which can
|
||||||
be considered as coincident. The \b Result will be a list of \b
|
be considered as coincident. The \b Result will be a list of \b
|
||||||
GEOM_Objects, containing one sub-shape per each detected set of
|
GEOM_Objects (edges), containing one sub-shape per each detected set of
|
||||||
coincident sub-shapes.
|
coincident sub-shapes. For example if there are two coincident edges
|
||||||
|
in selected shapes, the result list contains one of the two coincident edges.
|
||||||
|
|
||||||
\n <em>geompy.MakeGlueEdgesByList(theShape,theTolerance,theEdges)</em>,
|
<em>geompy.MakeGlueEdgesByList( theShapes, theTolerance, theEdges )</em>,
|
||||||
\n where \em theShape is a compound of shapes to be glued, \em
|
\n where \em theShape is either a list or compound of shapes to be glued, \em
|
||||||
theTolerance is a maximum distance between two edges, which can
|
theTolerance is a maximum distance between two edges, which can
|
||||||
be considered as coincident, \em theEdges is a list of
|
be considered as coincident, \em theEdges is a list of
|
||||||
sub-shapes to be glued.
|
edges to be glued.
|
||||||
|
|
||||||
\n <b>Example:</b>
|
\n <b>Example:</b>
|
||||||
|
|
||||||
\image html glue8.png
|
\image html glue8.png
|
||||||
<center><em>Box with an edge that can be glued</em></center>
|
<center><em>Two boxes with an edge that can be glued</em></center>
|
||||||
|
|
||||||
Our <b>TUI Scripts</b> provide you with useful examples of the use of
|
Our <b>TUI Scripts</b> provide you with useful examples of the use of
|
||||||
<b>Repairing Operations</b> \ref tui_glue_edges "Glue Edges".
|
<b>Repairing Operations</b> \ref tui_glue_edges "Glue Edges".
|
||||||
|
@ -8,7 +8,7 @@
|
|||||||
\n This operation glues faces that are coincident with respect to the
|
\n This operation glues faces that are coincident with respect to the
|
||||||
given tolerance value.
|
given tolerance value.
|
||||||
|
|
||||||
\n <b>Arguments:</b> Name + Compound of shapes + Tolerance value.
|
\n <b>Arguments:</b> Name + Shapes + Tolerance value.
|
||||||
\n <b>Advanced option:</b>
|
\n <b>Advanced option:</b>
|
||||||
\ref restore_presentation_parameters_page "Set presentation parameters and sub-shapes from arguments".
|
\ref restore_presentation_parameters_page "Set presentation parameters and sub-shapes from arguments".
|
||||||
\n The \b Result will be a \b GEOM_Object.
|
\n The \b Result will be a \b GEOM_Object.
|
||||||
@ -17,8 +17,9 @@ given tolerance value.
|
|||||||
|
|
||||||
|
|
||||||
\n <b>TUI Commands:</b>
|
\n <b>TUI Commands:</b>
|
||||||
\n <em>geompy.MakeGlueFaces(theShape,theTolerance,doKeepNonSolids)</em>,
|
|
||||||
\n where \em theShape is a compound of shapes to be glued, \em
|
<em>geompy.MakeGlueFaces( theShapes, theTolerance, doKeepNonSolids )</em>,
|
||||||
|
\n where \em theShapes is either a list or compound of shapes to be glued, \em
|
||||||
theTolerance is a maximum distance between two faces, which can
|
theTolerance is a maximum distance between two faces, which can
|
||||||
be considered as coincident. The \em doKeepNonSolids flag allows to
|
be considered as coincident. The \em doKeepNonSolids flag allows to
|
||||||
throw away non-solids from the result, if false. The \b Result will
|
throw away non-solids from the result, if false. The \b Result will
|
||||||
@ -38,20 +39,23 @@ performed and displays a notification.
|
|||||||
possible to select the faces for gluing in the 3D viewer.
|
possible to select the faces for gluing in the 3D viewer.
|
||||||
The selected faces will be marked in white.
|
The selected faces will be marked in white.
|
||||||
|
|
||||||
\n When the faces are glued their edges are glued as well. By default, other
|
When the faces are glued their edges are glued as well. By default, other
|
||||||
edges are not glued. To force gluing of all edges, check <b>Glue all coincident edges</b>
|
edges are not glued. To force gluing of all edges, check <b>Glue all coincident edges</b>
|
||||||
checkbox.
|
checkbox.
|
||||||
|
|
||||||
\n <b>TUI Commands:</b>
|
\n <b>TUI Commands:</b>
|
||||||
\n <em>geompy.GetGlueFaces(theShape,theTolerance)</em>,
|
|
||||||
\n where \em theShape is a compound of shapes to be glued, \em
|
|
||||||
theTolerance is a maximum distance between two faces, which can
|
|
||||||
be considered as coincident. The \b Result will be a list of \b
|
|
||||||
GEOM_Objects, containing one sub-shape per each detected set of
|
|
||||||
coincident sub-shapes.
|
|
||||||
|
|
||||||
\n <em>geompy.MakeGlueFacesByList(theShape,theTolerance,theFaces,doKeepNonSolids,doGlueAllEdges)</em>,
|
<em>geompy.GetGlueFaces( theShapes, theTolerance )</em>,
|
||||||
\n where \em theShape is a compound of shapes to be glued, \em
|
\n where \em theShapes is either a list or compound of shapes to be glued, \em
|
||||||
|
theTolerance is a maximum distance between two faces, which can
|
||||||
|
be considered as coincident. The \b Result will be a list of \b
|
||||||
|
GEOM_Objects (faces), containing one sub-shape per each detected set of
|
||||||
|
coincident sub-shapes. For example if there are two coincident faces
|
||||||
|
in selected shapes, the result list contains one of the two coincident faces.
|
||||||
|
|
||||||
|
<em>geompy.MakeGlueFacesByList( theShapes, theTolerance, theFaces,
|
||||||
|
doKeepNonSolids, doGlueAllEdges )</em>,
|
||||||
|
\n where \em theShapes is either a list or compound of shapes to be glued, \em
|
||||||
theTolerance is a maximum distance between two faces, which can
|
theTolerance is a maximum distance between two faces, which can
|
||||||
be considered as coincident, \em theFaces is a list of
|
be considered as coincident, \em theFaces is a list of
|
||||||
sub-shapes to be glued. The \em doKeepNonSolids flag allows to throw
|
sub-shapes to be glued. The \em doKeepNonSolids flag allows to throw
|
||||||
|
@ -25,8 +25,8 @@ Our <b>TUI Scripts</b> provide you with useful examples of the use of
|
|||||||
<em>To import geometrical objects from a BREP, IGES, STEP or STL file:</em>
|
<em>To import geometrical objects from a BREP, IGES, STEP or STL file:</em>
|
||||||
|
|
||||||
\par
|
\par
|
||||||
From the \b File menu choose <b>Import/<FormatName></b>, where <b><FormatName></b> is a name
|
From the \b File menu choose <b>Import/\<FormatName\></b>, where <b>\<FormatName\></b> is a name
|
||||||
of desirable format. In the <b>Import <FormatName></b> dialog box select the file to import
|
of desirable format. In the <b>Import \<FormatName\></b> dialog box select the file to import
|
||||||
and press \b Open. The file will be imported in the module and its contents (geometrical object)
|
and press \b Open. The file will be imported in the module and its contents (geometrical object)
|
||||||
will be displayed in the <b>Object Browser</b>.
|
will be displayed in the <b>Object Browser</b>.
|
||||||
|
|
||||||
@ -63,8 +63,8 @@ file:</em>
|
|||||||
|
|
||||||
\par
|
\par
|
||||||
Select the object you wish to export, then from the \b File menu choose
|
Select the object you wish to export, then from the \b File menu choose
|
||||||
<b>Export/<FormatName></b>, where <b><FormatName></b> is a name of desirable format.
|
<b>Export/\<FormatName\></b>, where <b>\<FormatName\></b> is a name of desirable format.
|
||||||
In the <b>Export <FormatName></b> dialog box define the name and the location
|
In the <b>Export \<FormatName\></b> dialog box define the name and the location
|
||||||
of the file to export and press \b Save.
|
of the file to export and press \b Save.
|
||||||
|
|
||||||
The dialog box to export the file can provide additional advanced parameters.
|
The dialog box to export the file can provide additional advanced parameters.
|
||||||
|
@ -10,7 +10,15 @@ The table displays:
|
|||||||
- 3*3 matrix of its own moments of inertia (in rows <b> 1:1, 2:1</b> and <b>3:1</b>) and
|
- 3*3 matrix of its own moments of inertia (in rows <b> 1:1, 2:1</b> and <b>3:1</b>) and
|
||||||
- the relative moments of inertia (in row <b>IX & IY & IZ</b>)
|
- the relative moments of inertia (in row <b>IX & IY & IZ</b>)
|
||||||
|
|
||||||
\n <b>TUI Command:</b> <em>geompy.Inertia(Shape),</em> where \em Shape is
|
\note This dialog supports navigation through the selectable objects (in OCC 3D viewer only):
|
||||||
|
- Scroll mouse wheel with pressed \em Ctrl key or press \em "S", \em "P" keys when input focus is
|
||||||
|
in the viewer to navigate between selectable objects.
|
||||||
|
- Press left mouse button to select an appropriate object to the dialog box.
|
||||||
|
.
|
||||||
|
For more details, please refer to the \em "Functionality common for OCC and VTK viewers" chapter
|
||||||
|
of the GUI module's documentation.
|
||||||
|
|
||||||
|
<b>TUI Command:</b> <em>geompy.Inertia(Shape),</em> where \em Shape is
|
||||||
a shape for which the own matrix of inertia and the relative moments of inertia are
|
a shape for which the own matrix of inertia and the relative moments of inertia are
|
||||||
returned.
|
returned.
|
||||||
|
|
||||||
|
22
doc/salome/gui/GEOM/input/inspect_object_operation.doc
Executable file
@ -0,0 +1,22 @@
|
|||||||
|
/*!
|
||||||
|
|
||||||
|
\page inspect_object_operation_page Inspect Object
|
||||||
|
|
||||||
|
This operation allows browsing the contents of the selected shape.
|
||||||
|
|
||||||
|
To <b>Inspect Object</b>, in the <b>Main Menu</b> select <b>Measures - > Inspect Object</b>.
|
||||||
|
|
||||||
|
\image html inspect_object.png
|
||||||
|
|
||||||
|
In this dialog:
|
||||||
|
- Click on the "selection" button and select an object to inspect in the Object Browser or in the viewer.
|
||||||
|
- Show/hide sub-shape(s) in the 3D viewer, by pressing “eye” icon in the first column of the tree view.
|
||||||
|
- Show/hide all sub-shapes in the 3D viewer, by pressing “eye” icon in the first column of the tree view header.
|
||||||
|
- Rename selected sub-shape by double-clicking on the item or pressing <F2> key.
|
||||||
|
- Show selected sub-shape(s) in the 3D viewer by pressing <b>Show Selected</b> button.
|
||||||
|
- Show selected sub-shape(s) in the 3D viewer and erase all currently shown objects by pressing <b>Show Only Selected</b> button.
|
||||||
|
- Hide selected sub-shape(s) from the 3D viewer by pressing <b>Hide Selected</b> button.
|
||||||
|
- Publish selected sub-shapes in the study, by pressing <b>Publish Selected</b> button.
|
||||||
|
- Close dialog box, by pressing <b>Close</b> button.
|
||||||
|
|
||||||
|
*/
|
@ -18,7 +18,7 @@ It is possible to show/hide a dimension in the view by checking on/off the box t
|
|||||||
|
|
||||||
The buttons to the right of the list provide the following operations:
|
The buttons to the right of the list provide the following operations:
|
||||||
<ul>
|
<ul>
|
||||||
<li>"Add" - opens \ref add_dimension_page "Add Dimension" dialog to define a new fly-out.</li>
|
<li>"Add" - opens "Add Dimension" dialog to define a new fly-out.</li>
|
||||||
<li>"Remove" - removes the selected item from the list.</li>
|
<li>"Remove" - removes the selected item from the list.</li>
|
||||||
<li>"Show All" / "Hide All" - shows/hides all dimensions existing in the list.</li>
|
<li>"Show All" / "Hide All" - shows/hides all dimensions existing in the list.</li>
|
||||||
</ul>
|
</ul>
|
||||||
|
@ -17,11 +17,20 @@ Select one of the found solutions in the \b Solution list to display it in the V
|
|||||||
Press \b Apply or <b>Apply and Close</b> button to create a set of closest
|
Press \b Apply or <b>Apply and Close</b> button to create a set of closest
|
||||||
points, corresponding to all found solutions.
|
points, corresponding to all found solutions.
|
||||||
|
|
||||||
|
\note This dialog supports navigation through the selectable objects (in OCC 3D viewer only):
|
||||||
|
- Scroll mouse wheel with pressed \em Ctrl key or press \em "S", \em "P" keys when input focus is
|
||||||
|
in the viewer to navigate between selectable objects.
|
||||||
|
- Press left mouse button to select an appropriate object to the dialog box.
|
||||||
|
.
|
||||||
|
For more details, please refer to the \em "Functionality common for OCC and VTK viewers" chapter
|
||||||
|
of the GUI module's documentation.
|
||||||
|
|
||||||
<b>TUI Commands:</b>
|
<b>TUI Commands:</b>
|
||||||
\n<em>aDist = geompy.MinDistance(Shape1, Shape2),</em>
|
- <em>aDist = geompy.MinDistance(Shape1, Shape2),</em>
|
||||||
\n<em>[aDist, DX, DY, DZ] = geompy.MinDistanceComponents(Shape1, Shape2),</em>
|
- <em>[aDist, DX, DY, DZ] = geompy.MinDistanceComponents(Shape1, Shape2),</em>
|
||||||
\n<em>[nbSols, (x11, y11, z11, x21, y21, z21, ...)] = geompy.ClosestPoints(Shape1, Shape2),</em>
|
- <em>[nbSols, (x11, y11, z11, x21, y21, z21, ...)] = geompy.ClosestPoints(Shape1, Shape2),</em>
|
||||||
\n where \em Shape1 and \em Shape2 are the shapes, between which the minimal
|
.
|
||||||
|
where \em Shape1 and \em Shape2 are the shapes, between which the minimal
|
||||||
distance is computed.
|
distance is computed.
|
||||||
|
|
||||||
See also a \ref tui_min_distance_page "TUI example".
|
See also a \ref tui_min_distance_page "TUI example".
|
||||||
|
@ -1,24 +1,44 @@
|
|||||||
/*!
|
/*!
|
||||||
|
|
||||||
\page projection_operation_page Projection on a Face
|
\page projection_operation_page Projection
|
||||||
|
|
||||||
\n To produce a <b>Projection</b> in the <b>Main Menu</b> select
|
To produce a <b>Projection</b> in the <b>Main Menu</b> select
|
||||||
<b>Operations - > Transformation - > Projection</b>
|
<b>Operations - > Transformation - > Projection</b>
|
||||||
|
|
||||||
\n This operation makes normal projection of a <b>Source vertex, edge
|
This operation makes normal projection of one shape to another.
|
||||||
or wire</b> on a given <b>Target face</b>.
|
|
||||||
\ref restore_presentation_parameters_page "Advanced options".
|
There are 3 types of projection different by types of operands.
|
||||||
|
|
||||||
|
Firstly, you can project <b>Source vertex, edge or wire</b> on a given <b>Target face</b>.
|
||||||
|
|
||||||
\image html projection_dlg.png
|
\image html projection_dlg.png
|
||||||
|
|
||||||
\n <b>Example:</b>
|
Secondly, you can project <b>Source vertex</b> on a given <b>Target wire</b>.
|
||||||
|
|
||||||
|
\image html projection_dlg1.png
|
||||||
|
|
||||||
|
Thirdly, you can project <b>Source vertex</b> on a given <b>Target edge</b>.
|
||||||
|
|
||||||
|
\image html projection_dlg2.png
|
||||||
|
|
||||||
|
\ref restore_presentation_parameters_page "Advanced options".
|
||||||
|
|
||||||
|
\note This dialog supports navigation through the selectable objects (in OCC 3D viewer only):
|
||||||
|
- Scroll mouse wheel with pressed \em Ctrl key or press \em "S", \em "P" keys when input focus is
|
||||||
|
in the viewer to navigate between selectable objects.
|
||||||
|
- Press left mouse button to select an appropriate object to the dialog box.
|
||||||
|
.
|
||||||
|
For more details, please refer to the \em "Functionality common for OCC and VTK viewers" chapter
|
||||||
|
of the GUI module's documentation.
|
||||||
|
|
||||||
|
<b>Example:</b>
|
||||||
|
|
||||||
\image html projection_preview.png "The curve (in red) and its projection on the cylindric surface"
|
\image html projection_preview.png "The curve (in red) and its projection on the cylindric surface"
|
||||||
|
|
||||||
\n <b>TUI Command:</b> <em>geompy.MakeProjection(Source, Target),</em>
|
<b>TUI Command:</b> <em>geompy.MakeProjection(Source, Target),</em>
|
||||||
where \em Source is a shape which has to be projected, \em Target
|
\n where \em Source is a shape which has to be projected, \em Target
|
||||||
is a face, on which the \em Source shape will be projected. The \em
|
is a shape, on which the \em Source shape will be projected. The \em
|
||||||
Result will be a \em GEOM_Object.
|
Result will be a \em GEOM_Object.
|
||||||
|
|
||||||
Our <b>TUI Scripts</b> provide you with useful examples of the use of
|
Our <b>TUI Scripts</b> provide you with useful examples of the use of
|
||||||
\ref tui_projection "Transformation Operations".
|
\ref tui_projection "Transformation Operations".
|
||||||
|
@ -5,21 +5,22 @@
|
|||||||
\n To <b>Remove internal faces</b> in the <b>Main Menu</b> select
|
\n To <b>Remove internal faces</b> in the <b>Main Menu</b> select
|
||||||
<b>Repair - > Remove internal faces</b>.
|
<b>Repair - > Remove internal faces</b>.
|
||||||
|
|
||||||
\n This operation removes all shared faces from a compound to obtain
|
This operation removes all shared faces from given solids to obtain
|
||||||
one or more bigger solids from a set of smaller solids.
|
one or more bigger solids from a set of smaller solids.
|
||||||
|
|
||||||
\image html remove_webs.png
|
\image html remove_webs.png
|
||||||
|
|
||||||
\n <b>Arguments:</b> Name + one shape.
|
\n <b>Arguments:</b> Name + one or more shapes containing solids.
|
||||||
\n <b>Advanced option:</b>
|
\n <b>Advanced option:</b>
|
||||||
\ref restore_presentation_parameters_page "Set presentation parameters and sub-shapes from arguments".
|
\ref restore_presentation_parameters_page "Set presentation parameters and sub-shapes from arguments".
|
||||||
|
|
||||||
\note Only shared faces will be removed. Coincident but not shared
|
\note Only shared faces will be removed. Coincident but not shared
|
||||||
faces will stay as is, use Glue Faces or Partition before
|
faces will stay as is, use \ref glue_faces_operation_page or \ref partition_page before
|
||||||
Remove Internal Faces if you need to remove them.
|
<b>Remove Internal Faces</b> if you need to remove them.
|
||||||
|
|
||||||
\n <b>TUI Command:</b> <em>geompy.RemoveInternalFaces(theCompound)</em>,
|
\n <b>TUI Command:</b> <br>
|
||||||
where <em>theCompound</em> is a compound of solids.
|
<em>geompy.RemoveInternalFaces( theSolids )</em>,<br>
|
||||||
|
where <em>theSolids</em> is either a compound or a list of solids.
|
||||||
|
|
||||||
\n Our <b>TUI Scripts</b> provide you with useful examples of the
|
\n Our <b>TUI Scripts</b> provide you with useful examples of the
|
||||||
\ref tui_remove_webs "Remove Internal Faces" functionality usage.
|
\ref tui_remove_webs "Remove Internal Faces" functionality usage.
|
||||||
|
@ -16,9 +16,9 @@ open contour asnd miodifies the underlying face.</li>
|
|||||||
holes with free boundaries on a selected face.</li>
|
holes with free boundaries on a selected face.</li>
|
||||||
<li>\subpage sewing_operation_page "Sewing" - sews faces or shells.</li>
|
<li>\subpage sewing_operation_page "Sewing" - sews faces or shells.</li>
|
||||||
<li>\subpage glue_faces_operation_page "Glue faces" - unites
|
<li>\subpage glue_faces_operation_page "Glue faces" - unites
|
||||||
coincident faces within the given tolerance.</li>
|
faces coincident within the given tolerance.</li>
|
||||||
<li>\subpage glue_edges_operation_page "Glue edges" - unites
|
<li>\subpage glue_edges_operation_page "Glue edges" - unites
|
||||||
coincident edges within the given tolerance.</li>
|
edges coincident within the given tolerance.</li>
|
||||||
<li>\subpage limit_tolerance_operation_page "Limit Tolerance" - tries
|
<li>\subpage limit_tolerance_operation_page "Limit Tolerance" - tries
|
||||||
to set new tolerance value for the given shape.</li>
|
to set new tolerance value for the given shape.</li>
|
||||||
<li>\subpage add_point_on_edge_operation_page "Add point on edge" -
|
<li>\subpage add_point_on_edge_operation_page "Add point on edge" -
|
||||||
@ -26,7 +26,7 @@ splits an edge in two.</li>
|
|||||||
<li>\subpage change_orientation_operation_page "Change orientation" -
|
<li>\subpage change_orientation_operation_page "Change orientation" -
|
||||||
reverses the normals of the selected faces.</li>
|
reverses the normals of the selected faces.</li>
|
||||||
<li>\subpage remove_webs_operation_page "Remove internal faces" -
|
<li>\subpage remove_webs_operation_page "Remove internal faces" -
|
||||||
rebuilds the topology of a compound of solids by removing the faces
|
rebuilds the topology of solids by removing the faces
|
||||||
are shared by several solids.</li>
|
are shared by several solids.</li>
|
||||||
<li>\subpage remove_extra_edges_operation_page "Remove extra edges" -
|
<li>\subpage remove_extra_edges_operation_page "Remove extra edges" -
|
||||||
removes seam and degenerated edges from the given shape.</li>
|
removes seam and degenerated edges from the given shape.</li>
|
||||||
|
@ -1,27 +1,29 @@
|
|||||||
/*!
|
/*!
|
||||||
|
|
||||||
\page section_opeartion_page Section
|
\page section_opeartion_page Intersection
|
||||||
|
|
||||||
\b Section operation creates an edge or a wire representing the intersection of surfaces of two shapes.
|
\b Intersection operation creates a vertex, an edge, a wire or a compound
|
||||||
|
of them representing the intersection of two shapes.
|
||||||
|
|
||||||
To produce it, select in the main menu <b>Operations - > Boolean - > Section</b>
|
To produce it, select in the main menu <b>Operations - > Boolean - > Intersection</b>
|
||||||
|
|
||||||
\image html neo-section.png "Section dialog"
|
\image html neo-section.png "Intersection dialog"
|
||||||
|
|
||||||
In this dialog:
|
In this dialog:
|
||||||
- Input or accept the default \b Name of the resulting shape.
|
- Input or accept the default \b Name of the resulting shape.
|
||||||
- Click the arrow button and select in the Object Browser or in the Viewer the intersecting <b>Objects</b>.
|
- Click the arrow button and select in the Object Browser or in the Viewer the intersecting <b>Objects</b>.
|
||||||
- Activate the corresponding check-box if you wish to <b> Detect Self-intersections </b>.
|
- Activate the corresponding check-box if you wish to <b> Detect Self-intersections</b>. If a self-intersection detected the operation fails.
|
||||||
- Activate \ref restore_presentation_parameters_page "Advanced options" if required.
|
- Activate \ref restore_presentation_parameters_page "Advanced options" if required.
|
||||||
- Press "Apply" or "Apply & Close" button to get the result (EDGE or WIRE).
|
- Press "Apply" or "Apply & Close" button to get the result (VERTEX, EDGE, WIRE or COMPOUND).
|
||||||
|
|
||||||
|
\note This dialog supports navigation through the selectable objects (in OCC 3D viewer only):
|
||||||
|
- Scroll mouse wheel with pressed \em Ctrl key or press \em "S", \em "P" keys when input focus is
|
||||||
|
in the viewer to navigate between selectable objects.
|
||||||
|
- Press left mouse button to select an appropriate object to the dialog box.
|
||||||
|
.
|
||||||
|
For more details, please refer to the \em "Functionality common for OCC and VTK viewers" chapter
|
||||||
|
of the GUI module's documentation.
|
||||||
|
|
||||||
\note This algorithm does not find all types of self-intersections. It is tuned
|
|
||||||
to detect vertex/vertex, vertex/edge, edge/edge, vertex/face and edge/face
|
|
||||||
intersections. Face/face intersections detection is switched off as it
|
|
||||||
is a time-consuming operation that gives an impact on performance. To find
|
|
||||||
all self-intersections use \ref check_self_intersections_page
|
|
||||||
"Detect Self-intersection tool".
|
|
||||||
|
|
||||||
This operation can be performed using a <b>TUI Command:</b>
|
This operation can be performed using a <b>TUI Command:</b>
|
||||||
|
|
||||||
<em>geompy.MakeSection(s1, s2, checkSelfInte)</em>
|
<em>geompy.MakeSection(s1, s2, checkSelfInte)</em>
|
||||||
|
@ -2,9 +2,24 @@
|
|||||||
|
|
||||||
\page sewing_operation_page Sewing
|
\page sewing_operation_page Sewing
|
||||||
|
|
||||||
|
\b Sewing operation allows uniting several faces (possibly contained
|
||||||
|
in a shell, solid or compound) into one shell while geometrically
|
||||||
|
coincident (within a specified tolerance) edges (or parts of edges) of
|
||||||
|
different faces are replaced by one edge thus producing a shell of
|
||||||
|
faces with shared boundaries.<p>
|
||||||
|
This operation is similar to <b>New Entity - > Build - > Shell</b>
|
||||||
|
operation, the difference is that with \b Sewing you can specify the
|
||||||
|
tolerance and can get a non-manifold result. <p>
|
||||||
|
Possibility to create a non-manifold shell can be used e.g. to create a
|
||||||
|
shell forming several closed domains and then to create several solids
|
||||||
|
with shared boundaries from this shell.
|
||||||
|
|
||||||
|
\note Geometrically coincident faces (or part of faces) won't be
|
||||||
|
replaced by one face during \b Sewing.
|
||||||
|
|
||||||
To produce a \b Sewing operation in the <b>Main Menu</b> select <b>Repair - > Sewing</b>.
|
To produce a \b Sewing operation in the <b>Main Menu</b> select <b>Repair - > Sewing</b>.
|
||||||
|
|
||||||
The \b Result will be a \b GEOM_Object.
|
The \b Result will be a \b GEOM_Object (shell).
|
||||||
|
|
||||||
\image html repair6.png
|
\image html repair6.png
|
||||||
|
|
||||||
|
@ -51,11 +51,27 @@ spots and strips.</li>
|
|||||||
possible face size.</li>
|
possible face size.</li>
|
||||||
</ul>
|
</ul>
|
||||||
<li><b>Drop Small Edges</b> (DropSmallEdges) - removes edges, which
|
<li><b>Drop Small Edges</b> (DropSmallEdges) - removes edges, which
|
||||||
merge with neighbouring edges.</li>
|
merge with neighboring edges.</li>
|
||||||
<ul>
|
<ul>
|
||||||
<li><b>3D Tolerance</b> (DropSmallEdges.Tolerance3d) - defines minimum
|
<li><b>3D Tolerance</b> (DropSmallEdges.Tolerance3d) - defines minimum
|
||||||
possible distance between two parallel edges.</li>
|
possible distance between two parallel edges.</li>
|
||||||
</ul>
|
</ul>
|
||||||
|
<li><b>Drop Small Solids</b> (DropSmallSolids) - either removes small
|
||||||
|
solids or merges them with neighboring ones.</li>
|
||||||
|
<ul>
|
||||||
|
<li><b>Width factor tol.</b> (DropSmallSolids.WidthFactorThreshold) -
|
||||||
|
defines maximum value of <em>2V/S</em> of a solid which is
|
||||||
|
considered small, where \a V is volume and \a S is surface area of
|
||||||
|
the solid.</li>
|
||||||
|
<li><b>Volume tol.</b> (DropSmallSolids.VolumeThreshold) - defines
|
||||||
|
maximum volume of a solid which is considered small.</li>
|
||||||
|
<li><b>To merge solids</b> (DropSmallSolids.MergeSolids) - if
|
||||||
|
activated, small solids are removed, else small solids are merged to
|
||||||
|
adjacent non-small solids or left untouched if cannot be merged.
|
||||||
|
</li>
|
||||||
|
</ul>
|
||||||
|
If the both tolerances are activated a solid is considered small if
|
||||||
|
it meets the both criteria.
|
||||||
<li><b>Split Angle</b> (SplitAngle) - splits faces based on conical
|
<li><b>Split Angle</b> (SplitAngle) - splits faces based on conical
|
||||||
surfaces, surfaces of revolution and cylindrical surfaces in segments
|
surfaces, surfaces of revolution and cylindrical surfaces in segments
|
||||||
using a certain angle.</li>
|
using a certain angle.</li>
|
||||||
|
@ -4,27 +4,37 @@
|
|||||||
|
|
||||||
This operation is a special case of <b>Explode</b> operation. It
|
This operation is a special case of <b>Explode</b> operation. It
|
||||||
produces sub-shapes of the exploded shape (the first shape in the list
|
produces sub-shapes of the exploded shape (the first shape in the list
|
||||||
of argument shapes), which are shared with all other shapes in the
|
of argument shapes), which are shared with other shapes in the
|
||||||
arguments.
|
arguments. The argument shapes can also be contained in a compound or
|
||||||
|
group.
|
||||||
|
|
||||||
To use this operation, select in the Main Menu <b>Operations -> Get
|
To use this operation, select in the Main Menu <b>Operations -> Get
|
||||||
Shared Shapes.</b> The following dialog box will appear.
|
Shared Shapes.</b> The following dialog box will appear.
|
||||||
|
|
||||||
\image html shared_shapes.png
|
\image html shared_shapes.png
|
||||||
|
|
||||||
<ul>
|
In this dialog:
|
||||||
<li> <b>Name</b> is the base name of the resulting shapes; </li>
|
- <b>Name</b> is the base name of the resulting shapes.
|
||||||
<li> <b>Shapes</b> are the shapes to fing shared sub-shapes of; </li>
|
- <b>Shapes</b> are the shapes to fing shared sub-shapes of.
|
||||||
<li> <b>Sub-shapes Type</b> is the type of required sub-shapes; </li>
|
- <b>Sub-shapes Type</b> is the type of required sub-shapes.
|
||||||
</ul>
|
- <b>Shared by all</b> option specifies what type of shared sub-shapes should be checked:
|
||||||
|
- \b On: causes to search sub-shapes from the first input shape shared with all other input shapes;
|
||||||
|
- \b Off: causes to search sub-shapes shared between couples of input shapes.
|
||||||
|
|
||||||
\n <b>Advanced options</b> \ref preview_anchor "Preview"
|
\note For the case when "Shared by all" option is switched off - if an input list of shapes
|
||||||
|
contains single compound, the sub-shapes shared between all possible couples of its top-level shapes
|
||||||
|
are searched; otherwise, only sub-shapes that are shared between first input shape and all rest input
|
||||||
|
shapes are searched.
|
||||||
|
|
||||||
\n <b>TUI Command:</b> <em> geompy.GetSharedShapesMulti(Shapes,
|
<b>Advanced options:</b> \ref preview_anchor "Preview"
|
||||||
Type),</em> where \em Shapes is a list of shapes to fing shared sub-
|
|
||||||
|
<b>TUI Command:</b> <em> geompy.GetSharedShapesMulti( Shapes, Type ),</em>
|
||||||
|
<br> where \em Shapes is a list or compound of shapes to fing shared sub-
|
||||||
shapes of and \em Type is the type of required sub-shapes.
|
shapes of and \em Type is the type of required sub-shapes.
|
||||||
|
|
||||||
Our <b>TUI Scripts</b> provide you with useful examples of the use of
|
Our <b>TUI Scripts</b> provide you with useful examples of the use of
|
||||||
\ref swig_GetSharedShapes "Get Shared Shapes" functionality.
|
Get Shared Shapes functionality:
|
||||||
|
- \ref tui_shared_shapes "Example 1"
|
||||||
|
- \ref swig_GetSharedShapes "Example 2"
|
||||||
|
|
||||||
*/
|
*/
|
||||||
|
@ -9,7 +9,15 @@ geometrical object.
|
|||||||
|
|
||||||
The table displays \b Min and \b Max tolerance values for \b Face, \b Edge and \b Vertex tolerance.
|
The table displays \b Min and \b Max tolerance values for \b Face, \b Edge and \b Vertex tolerance.
|
||||||
|
|
||||||
\n <b>TUI Command:</b> <em>geompy.Tolerance(Shape),</em> where \em Shape
|
\note This dialog supports navigation through the selectable objects (in OCC 3D viewer only):
|
||||||
|
- Scroll mouse wheel with pressed \em Ctrl key or press \em "S", \em "P" keys when input focus is
|
||||||
|
in the viewer to navigate between selectable objects.
|
||||||
|
- Press left mouse button to select an appropriate object to the dialog box.
|
||||||
|
.
|
||||||
|
For more details, please refer to the \em "Functionality common for OCC and VTK viewers" chapter
|
||||||
|
of the GUI module's documentation.
|
||||||
|
|
||||||
|
<b>TUI Command:</b> <em>geompy.Tolerance(Shape),</em> where \em Shape
|
||||||
is a shape for which minimal and maximal tolerances are returned.
|
is a shape for which minimal and maximal tolerances are returned.
|
||||||
|
|
||||||
See also a \ref tui_tolerance_page "TUI example".
|
See also a \ref tui_tolerance_page "TUI example".
|
||||||
|
53
doc/salome/gui/GEOM/input/transfer_data.doc
Normal file
@ -0,0 +1,53 @@
|
|||||||
|
/*!
|
||||||
|
|
||||||
|
\page transfer_data_page Transfer Data
|
||||||
|
|
||||||
|
This operation performs copying of non-topological data
|
||||||
|
from one shape to another. The topology of the destination object
|
||||||
|
will not change, only non-topological data will be transferred
|
||||||
|
(if it is present in the source object). It is possible to transfer
|
||||||
|
the following data with this operation:
|
||||||
|
<ul>
|
||||||
|
<li> <b>Names</b></li>
|
||||||
|
<li> <b>Materials</b></li>
|
||||||
|
</ul>
|
||||||
|
|
||||||
|
To use this operation, select in the Main Menu <b>Operations -> Transfer Data</b>.
|
||||||
|
The following dialog box will appear.
|
||||||
|
|
||||||
|
\image html transfer_data1.png "Transfer Data Dialog"
|
||||||
|
|
||||||
|
In this dialog:
|
||||||
|
<ul>
|
||||||
|
<li> <b>Source Shape</b> is an object that is a source of non-topological data.</li>
|
||||||
|
<li> <b>Destination Shape</b> is a data destination object. </li>
|
||||||
|
<li> <b>Type of detection operation</b> is the method to search sub-shapes of
|
||||||
|
<b>Source Shape</b> in <b>Destination Shape</b>. Data are transferred
|
||||||
|
from these corresponding sub-shapes. This is a combo-box with the following
|
||||||
|
possible values:
|
||||||
|
<ul>
|
||||||
|
<li><b>Get In Place</b> - current implementation of Get In Place algorithm
|
||||||
|
(default value).</li>
|
||||||
|
<li><b>Get In Place (old)</b> - old implementation of Get In Place
|
||||||
|
algorithm.</li>
|
||||||
|
<li><b>Get In Place By History</b> - Get In Place By History algorithm.</li>
|
||||||
|
</ul>
|
||||||
|
</li>
|
||||||
|
</ul>
|
||||||
|
|
||||||
|
To copy data click on \b Apply or <b>Apply and Close</b> button. As the result
|
||||||
|
it is possible to see how many names and materials are copied as well as
|
||||||
|
maximum number of names and materials available for copying. This information is
|
||||||
|
provided on the following message box:
|
||||||
|
|
||||||
|
\image html transfer_data2.png "Transfer Data Information"
|
||||||
|
|
||||||
|
<b>TUI Command:</b> <em>geompy.TransferData(ObjectFrom, ObjectTo, FindMethod),</em>
|
||||||
|
<br> where \em ObjectFrom is a data source object, \em ObjectTo is a
|
||||||
|
destination object and \em FindMethod is a same shape detection method with
|
||||||
|
default value \em GEOM.FSM_GetInPlace.
|
||||||
|
|
||||||
|
Our <b>TUI Scripts</b> provide you with useful example of the use of
|
||||||
|
\ref swig_TransferData "Transfer Data" functionality.
|
||||||
|
|
||||||
|
*/
|
@ -16,6 +16,7 @@ which allow to:
|
|||||||
<li>\subpage scale_operation_page "Scale" an object by one or several scale factors.</li>
|
<li>\subpage scale_operation_page "Scale" an object by one or several scale factors.</li>
|
||||||
<li>Create an \subpage offset_operation_page "Offset" of an object.</li>
|
<li>Create an \subpage offset_operation_page "Offset" of an object.</li>
|
||||||
<li>Create a \subpage projection_operation_page "Projection" of an object on a face.</li>
|
<li>Create a \subpage projection_operation_page "Projection" of an object on a face.</li>
|
||||||
|
<li>Create an \subpage extension_operation_page "Extension" of an edge or a face.</li>
|
||||||
<li>Create a simultaneous \subpage multi_translation_operation_page "Translation in several directions".</li>
|
<li>Create a simultaneous \subpage multi_translation_operation_page "Translation in several directions".</li>
|
||||||
<li>Create a simultaneous \subpage multi_rotation_operation_page</li> "Rotation in several directions".</li>
|
<li>Create a simultaneous \subpage multi_rotation_operation_page</li> "Rotation in several directions".</li>
|
||||||
</ul>
|
</ul>
|
||||||
|
@ -25,6 +25,8 @@ into water.</li>
|
|||||||
special case of \b Explode operation. </li>
|
special case of \b Explode operation. </li>
|
||||||
<li>\subpage shared_shapes_page "Get shared shapes" operation, a
|
<li>\subpage shared_shapes_page "Get shared shapes" operation, a
|
||||||
special case of \b Explode operation. </li>
|
special case of \b Explode operation. </li>
|
||||||
|
<li>\subpage transfer_data_page "Transfer Data" operation, which copies
|
||||||
|
non-topological data from one shape to another. </li>
|
||||||
|
|
||||||
|
|
||||||
<li>\subpage restore_presentation_parameters_page "Restore presentation parameters".
|
<li>\subpage restore_presentation_parameters_page "Restore presentation parameters".
|
||||||
|
@ -38,6 +38,10 @@
|
|||||||
<br><h2>Creation of a Local Coordinate System</h2>
|
<br><h2>Creation of a Local Coordinate System</h2>
|
||||||
\tui_script{basic_geom_objs_ex09.py}
|
\tui_script{basic_geom_objs_ex09.py}
|
||||||
|
|
||||||
|
\anchor tui_creation_surface
|
||||||
|
<br><h2>Creation of a Surface From Face</h2>
|
||||||
|
\tui_script{basic_geom_objs_ex10.py}
|
||||||
|
|
||||||
\anchor tui_creation_polyline
|
\anchor tui_creation_polyline
|
||||||
<br><h2>Creation of 2D Polyline</h2>
|
<br><h2>Creation of 2D Polyline</h2>
|
||||||
\tui_script{polyline.py}
|
\tui_script{polyline.py}
|
||||||
|
@ -14,4 +14,8 @@
|
|||||||
<br><h2>Restore presentation parameters and sub-shapes</h2>
|
<br><h2>Restore presentation parameters and sub-shapes</h2>
|
||||||
\tui_script{basic_operations_ex03.py}
|
\tui_script{basic_operations_ex03.py}
|
||||||
|
|
||||||
|
\anchor tui_shared_shapes
|
||||||
|
<br><h2>Get shared shapes</h2>
|
||||||
|
\tui_script{basic_operations_ex04.py}
|
||||||
|
|
||||||
*/
|
*/
|
||||||
|
@ -15,7 +15,7 @@
|
|||||||
\tui_script{boolean_operations_ex03.py}
|
\tui_script{boolean_operations_ex03.py}
|
||||||
|
|
||||||
\anchor tui_section
|
\anchor tui_section
|
||||||
<br><h2>Section</h2>
|
<br><h2>Intersection</h2>
|
||||||
\tui_script{boolean_operations_ex04.py}
|
\tui_script{boolean_operations_ex04.py}
|
||||||
|
|
||||||
*/
|
*/
|
||||||
|
6
doc/salome/gui/GEOM/input/tui_fast_intersection.doc
Normal file
@ -0,0 +1,6 @@
|
|||||||
|
/*!
|
||||||
|
|
||||||
|
\page tui_fast_intersection_page Fast intersection
|
||||||
|
\tui_script{fast_intersection.py}
|
||||||
|
|
||||||
|
*/
|
@ -19,6 +19,7 @@
|
|||||||
<li>\subpage tui_check_compound_of_blocks_page</li>
|
<li>\subpage tui_check_compound_of_blocks_page</li>
|
||||||
<li>\subpage tui_get_non_blocks_page</li>
|
<li>\subpage tui_get_non_blocks_page</li>
|
||||||
<li>\subpage tui_check_self_intersections_page</li>
|
<li>\subpage tui_check_self_intersections_page</li>
|
||||||
|
<li>\subpage tui_fast_intersection_page</li>
|
||||||
</ul>
|
</ul>
|
||||||
|
|
||||||
*/
|
*/
|
||||||
|
@ -66,6 +66,12 @@
|
|||||||
\anchor swig_ChangeOrientation
|
\anchor swig_ChangeOrientation
|
||||||
\until ChangeOrientation
|
\until ChangeOrientation
|
||||||
|
|
||||||
|
\anchor swig_ExtendFaceEdge
|
||||||
|
\until ExtendFace
|
||||||
|
|
||||||
|
\anchor swig_SurfaceFromFace
|
||||||
|
\until MakeSurfaceFromFace
|
||||||
|
|
||||||
\anchor swig_ExtractShapes
|
\anchor swig_ExtractShapes
|
||||||
\until prism_edges
|
\until prism_edges
|
||||||
|
|
||||||
|
@ -14,9 +14,12 @@
|
|||||||
\until CheckShape
|
\until CheckShape
|
||||||
|
|
||||||
\anchor swig_CheckShape
|
\anchor swig_CheckShape
|
||||||
\until MakeCompound
|
\until Detect Self-intersections
|
||||||
|
|
||||||
\anchor swig_CheckSelfIntersections
|
\anchor swig_CheckSelfIntersections
|
||||||
|
\until Detect Fast intersection
|
||||||
|
|
||||||
|
\anchor swig_FastIntersection
|
||||||
\until WhatIs
|
\until WhatIs
|
||||||
|
|
||||||
\anchor swig_WhatIs
|
\anchor swig_WhatIs
|
||||||
|
@ -96,6 +96,9 @@
|
|||||||
\anchor swig_GetSharedShapes
|
\anchor swig_GetSharedShapes
|
||||||
\until "sharedEdge_"
|
\until "sharedEdge_"
|
||||||
|
|
||||||
|
\anchor swig_TransferData
|
||||||
|
\until subBlackWhite[1]
|
||||||
|
|
||||||
\anchor swig_CheckAndImprove
|
\anchor swig_CheckAndImprove
|
||||||
\until "blocksComp"
|
\until "blocksComp"
|
||||||
|
|
||||||
|
@ -22,6 +22,10 @@
|
|||||||
<br><h2>Creation of a Solid</h2>
|
<br><h2>Creation of a Solid</h2>
|
||||||
\tui_script{topological_geom_objs_ex05.py}
|
\tui_script{topological_geom_objs_ex05.py}
|
||||||
|
|
||||||
|
\anchor tui_creation_solid_from_faces
|
||||||
|
<br><h2>Creation of a Solid from the set of connected faces</h2>
|
||||||
|
\tui_script{topological_geom_objs_ex07.py}
|
||||||
|
|
||||||
\anchor tui_creation_compound
|
\anchor tui_creation_compound
|
||||||
<br><h2>Creation of a Compound</h2>
|
<br><h2>Creation of a Compound</h2>
|
||||||
\tui_script{topological_geom_objs_ex06.py}
|
\tui_script{topological_geom_objs_ex06.py}
|
||||||
|
@ -54,4 +54,8 @@
|
|||||||
<br><h2>Chamfer</h2>
|
<br><h2>Chamfer</h2>
|
||||||
\tui_script{transformation_operations_ex13.py}
|
\tui_script{transformation_operations_ex13.py}
|
||||||
|
|
||||||
|
\anchor tui_extend
|
||||||
|
<br><h2>Extend Edge and Face</h2>
|
||||||
|
\tui_script{transformation_operations_ex14.py}
|
||||||
|
|
||||||
*/
|
*/
|
||||||
|
@ -17,7 +17,7 @@ complex geometrical objects (2D & 3D elements):
|
|||||||
of a list of objects into an independent object.</li>
|
of a list of objects into an independent object.</li>
|
||||||
<li>\subpage cut_operation_page "Cut" - cuts one shape with
|
<li>\subpage cut_operation_page "Cut" - cuts one shape with
|
||||||
a list of others. </li>
|
a list of others. </li>
|
||||||
<li>\subpage section_opeartion_page "Section" - creates a section between two shapes.</li>
|
<li>\subpage section_opeartion_page "Intersection" - performs an intersection between two shapes.</li>
|
||||||
</ul>
|
</ul>
|
||||||
|
|
||||||
You can use advanced TUI commands performing these operations
|
You can use advanced TUI commands performing these operations
|
||||||
@ -34,7 +34,7 @@ theMainShape is the object of the operation and \em theShapesList is
|
|||||||
the list of tools for Cut operation;
|
the list of tools for Cut operation;
|
||||||
\par
|
\par
|
||||||
<em>geompy.MakeSection(Shape1, Shape2, checkSelfInte)</em>, where \em Shape1 is the first
|
<em>geompy.MakeSection(Shape1, Shape2, checkSelfInte)</em>, where \em Shape1 is the first
|
||||||
argument and \em Shape2 is the second argument of Section operation;
|
argument and \em Shape2 is the second argument of Intersection operation;
|
||||||
|
|
||||||
|
|
||||||
There are several TUI commands that can be used to perform boolean operations
|
There are several TUI commands that can be used to perform boolean operations
|
||||||
@ -45,7 +45,7 @@ operation.
|
|||||||
<em>geompy.MakeBoolean(Shape1, Shape2, Operation, checkSelfInte),</em> where \em
|
<em>geompy.MakeBoolean(Shape1, Shape2, Operation, checkSelfInte),</em> where \em
|
||||||
Shape1 is the first argument and \em Shape2 is the second argument of
|
Shape1 is the first argument and \em Shape2 is the second argument of
|
||||||
a Boolean operation, \em Operation is the type of a Boolean operation (1
|
a Boolean operation, \em Operation is the type of a Boolean operation (1
|
||||||
— Common, 2 — Cut, 3 — Fuse, 4 — Section).
|
— Common, 2 — Cut, 3 — Fuse, 4 — Intersection).
|
||||||
|
|
||||||
|
|
||||||
Besides, you can use advanced TUI commands performing these operations
|
Besides, you can use advanced TUI commands performing these operations
|
||||||
|