- in FaceData, IsFaceRectangular e IsFaceRhomboid ricevono solamente il parametro Face; utilizzano il gruppo per geometrie temporanee invece di AddGroup
This commit is contained in:
+26
-14
@@ -216,29 +216,41 @@ function FaceData.GetFacesInfo( Proc, Part, FacesToGet)
|
||||
end
|
||||
|
||||
-------------------------------------------------------------------------------------------------------------
|
||||
-- TODO valutare se scrivere in gruppo temporaneo che non richiede di passare ogni volta idPart
|
||||
function FaceData.IsFaceRectangular( Proc, Face)
|
||||
local nAddGrpId = BeamLib.GetAddGroup( Proc.idPart)
|
||||
local nContourId, nContourCnt = EgtExtractSurfTmFacetLoops( Proc.id, Face.id, nAddGrpId)
|
||||
function FaceData.IsFaceRectangular( Face)
|
||||
-- recupero gruppo per geometrie temporanee
|
||||
local bIsTempGroupToDelete = false
|
||||
local idTempGroup = BeamLib.GetTempGroup()
|
||||
if not idTempGroup then
|
||||
idTempGroup = BeamLib.CreateTempGroup()
|
||||
bIsTempGroupToDelete = true
|
||||
end
|
||||
|
||||
local nContourId, nContourCnt = EgtExtractSurfTmFacetLoops( Face.idTrimesh, Face.id, idTempGroup)
|
||||
if nContourCnt > 1 then
|
||||
error( 'IsFaceRectangular : too many loops')
|
||||
end
|
||||
|
||||
local bIsRectangular = EgtCurveIsARectangle( nContourId)
|
||||
|
||||
-- elimino curve create
|
||||
for i = 1, nContourCnt do
|
||||
EgtErase( nContourId + i - 1)
|
||||
-- se necessario, elimino il gruppo temporaneo
|
||||
if bIsTempGroupToDelete then
|
||||
EgtErase( idTempGroup)
|
||||
end
|
||||
|
||||
return bIsRectangular
|
||||
end
|
||||
|
||||
-------------------------------------------------------------------------------------------------------------
|
||||
-- TODO valutare se scrivere in gruppo temporaneo che non richiede di passare ogni volta idPart
|
||||
function FaceData.IsFaceRhomboid( Proc, Face)
|
||||
local nAddGrpId = BeamLib.GetAddGroup( Proc.idPart)
|
||||
local nContourId, nContourCnt = EgtExtractSurfTmFacetLoops( Proc.id, Face.id, nAddGrpId)
|
||||
function FaceData.IsFaceRhomboid( Face)
|
||||
-- recupero gruppo per geometrie temporanee
|
||||
local bIsTempGroupToDelete = false
|
||||
local idTempGroup = BeamLib.GetTempGroup()
|
||||
if not idTempGroup then
|
||||
idTempGroup = BeamLib.CreateTempGroup()
|
||||
bIsTempGroupToDelete = true
|
||||
end
|
||||
|
||||
local nContourId, nContourCnt = EgtExtractSurfTmFacetLoops( Face.idTrimesh, Face.id, idTempGroup)
|
||||
if nContourCnt > 1 then
|
||||
error( 'IsFaceRhomboid : too many loops')
|
||||
end
|
||||
@@ -253,9 +265,9 @@ function FaceData.IsFaceRhomboid( Proc, Face)
|
||||
bIsRhomboid = true
|
||||
end
|
||||
|
||||
-- elimino curve create
|
||||
for i = 1, nContourCnt do
|
||||
EgtErase( nContourId + i - 1)
|
||||
-- se necessario, elimino il gruppo temporaneo
|
||||
if bIsTempGroupToDelete then
|
||||
EgtErase( idTempGroup)
|
||||
end
|
||||
|
||||
return bIsRhomboid
|
||||
|
||||
Reference in New Issue
Block a user