geom/test/test_WrappedFace.py

47 lines
1.5 KiB
Python
Raw Permalink Normal View History

#!/usr/bin/env python
import sys
import salome
salome.salome_init()
import GEOM
from salome.geom import geomBuilder
import math
from inspect import getfile
from os.path import abspath, dirname, join
import SALOMEDS
geompy = geomBuilder.New()
data_dir = abspath(join(dirname(getfile(lambda: None)), 'data'))
myInitFace = geompy.ImportBREP(join(data_dir, 'WrappedFace_sphere_face.brep'))
listE = geompy.ExtractShapes(myInitFace, geompy.ShapeType["EDGE"], True)
myVertices = geompy.ImportBREP(join(data_dir, 'WrappedFace_sphere_vertices.brep'))
lVertices = geompy.SubShapeAll(myVertices, geompy.ShapeType["VERTEX"])
wrappedFaceSphere = geompy.MakeWrappedFace(listE, lVertices, 0.01)
wrappedAreaSphere = geompy.BasicProperties(wrappedFaceSphere)[1]
eps = 1e-5
expectedArea = 47123.88980388897
print(wrappedAreaSphere)
assert(math.fabs(expectedArea - wrappedAreaSphere) < eps)
###########################################################################
myEdges = geompy.ImportBREP(join(data_dir, 'WrappedFace_bspline_edges.brep'))
listE2 = geompy.ExtractShapes(myEdges, geompy.ShapeType["EDGE"], True)
myVertices2 = geompy.ImportBREP(join(data_dir, 'WrappedFace_bspline_vertices.brep'))
lVertices2 = geompy.SubShapeAll(myVertices2, geompy.ShapeType["VERTEX"])
wrappedFace = geompy.MakeWrappedFace(listE2, lVertices2, 0.01)
wrappedArea = geompy.BasicProperties(wrappedFace)[1]
expectedArea = 15702.653817260858
print(wrappedArea)
assert(math.fabs(expectedArea - wrappedArea) < eps)