Aller au contenu

intersection de faces 3D avec une droite


Messages recommandés

Invité charles74
Posté(e)

Bonjour à tous !

 

Je rencontre un problème en programmation vba, j'espère que vous pourrez m'aider !

 

Le but est de créer un point résultant de l'intersection de plusieurs faces 3D triangulées avec une droite.

Le fichier dxf est déjà importé et est dessiné dans l'espace objet. la droite est également créée comme ci-dessous :

[surligneur]

Dim lineobj As AcadLine

Set lineobj = ThisDrawing.ModelSpace.AddLine(Position_slt_1.Coordinates, Point_arbitraire.Coordinates)

[/surligneur]

'Intersection entre le modèle triangulé de faces 3D "model_theorique" (contenues dans une sélection) et la droite "lineobj"

[surligneur]

Dim intPoints As Variant

Dim h As Integer

 

For h = 0 To f Step 1 'f nbre de faces 3D

 

intPoints = lineobj.IntersectWith(model_theorique.Item(h), acExtendNone) 'Does not extend either object.

 

Dim point_inter As AcadPoint

Dim location4(0 To 2) As Double

 

location4(0) = intPoints(0): location4(1) = intPoints(1): location4(2) = intPoints(2)

 

Set point_inter = ThisDrawing.ModelSpace.AddPoint(location4)

ThisDrawing.SetVariable "PDMODE", 34

ThisDrawing.SetVariable "PDSIZE", 1

[/surligneur]

Il me dit problème d'index avec la variable "intpoints". Je pense que je comprends mal son fonctionnement.

 

Merci de votre aide,

cordialement,

 

Charles

Créer un compte ou se connecter pour commenter

Vous devez être membre afin de pouvoir déposer un commentaire

Créer un compte

Créez un compte sur notre communauté. C’est facile !

Créer un nouveau compte

Se connecter

Vous avez déjà un compte ? Connectez-vous ici.

Connectez-vous maintenant
×
×
  • Créer...

Information importante

Nous avons placé des cookies sur votre appareil pour aider à améliorer ce site. Vous pouvez choisir d’ajuster vos paramètres de cookie, sinon nous supposerons que vous êtes d’accord pour continuer. Politique de confidentialité