- in FaceData si calcola vtEdge per ogni lato in modo da non doverlo calcolare ogni volta; sostituito in tutte le funzioni
- in LeadInOutLib.CalculateLeadInOut si calcola l'attacco perpendicolare in modo rigoroso - in FACEBYBLADE correzioni al calcolo attacco
This commit is contained in:
@@ -51,12 +51,10 @@ local function GetMachiningPoints( Edge, dDepthToMachine)
|
||||
local ptMid = Point3d( ( ptStart + ptEnd) / 2)
|
||||
|
||||
-- caso ottimizzato: lato parallelo ad una direzione principale
|
||||
local vtEdge = Edge.ptEnd - Edge.ptStart
|
||||
vtEdge:normalize()
|
||||
local bIsEdgeParallelToMainDirection =
|
||||
AreSameOrOppositeVectorApprox( vtEdge, X_AX())
|
||||
or AreSameOrOppositeVectorApprox( vtEdge, Y_AX())
|
||||
or AreSameOrOppositeVectorApprox( vtEdge, Z_AX())
|
||||
AreSameOrOppositeVectorApprox( Edge.vtEdge, X_AX())
|
||||
or AreSameOrOppositeVectorApprox( Edge.vtEdge, Y_AX())
|
||||
or AreSameOrOppositeVectorApprox( Edge.vtEdge, Z_AX())
|
||||
|
||||
-- aggiunta punti
|
||||
-- inizio e fine solo se lato obliquo
|
||||
@@ -181,9 +179,7 @@ local function CheckCollisionWithAxis( sAxis, MachiningParameters, OptionalParam
|
||||
end
|
||||
|
||||
-- vtC punta sempre verso il corpo dell'asse C o verso l'aggregato
|
||||
local vtEdge = Edge.ptEnd - Edge.ptStart
|
||||
vtEdge:normalize()
|
||||
local nSCC = Tool.SetupInfo.GetSCC( Edge.vtN, vtEdge, vtNFace)
|
||||
local nSCC = Tool.SetupInfo.GetSCC( Edge.vtN, Edge.vtEdge, vtNFace)
|
||||
local vtSCC = BeamLib.GetDirectionFromSCC( nSCC)
|
||||
local vtC = vtHead ^ Tool.SetupInfo.vtRotationAxisC
|
||||
vtC:normalize()
|
||||
@@ -269,12 +265,10 @@ function PreSimulationLib.CheckCollisionAxisAB( Edge, vtNFace, vtHead, Part, Too
|
||||
|
||||
-- riferimento perpendicolare al taglio, X nel verso della normale al lato e Y verso il motore
|
||||
local ptMachining = Point3d( ( Edge.ptStart + Edge.ptEnd) / 2) + Edge.vtN * ( Edge.dElevation - dDepthToMachine)
|
||||
local vtEdge = Edge.ptEnd - Edge.ptStart
|
||||
vtEdge:normalize()
|
||||
|
||||
-- costruzione flat region del pezzo e del grezzo restante nel piano perpendicolare al taglio
|
||||
local idPartSurfFr = GetPartSurfFrInPlane( Part, vtEdge)
|
||||
local idRestlengthSurfFr = GetRestlengthSurfFrInPlane( Part, vtEdge)
|
||||
local idPartSurfFr = GetPartSurfFrInPlane( Part, Edge.vtEdge)
|
||||
local idRestlengthSurfFr = GetRestlengthSurfFrInPlane( Part, Edge.vtEdge)
|
||||
|
||||
-- costruzione flat region approssimata del motore nel piano perpendicolare al taglio
|
||||
-- punto di congiunzione tra motore e lama
|
||||
|
||||
Reference in New Issue
Block a user