Aller au contenu

au secours !!! création 3D avec coordonnées x,y et z


Messages recommandés

Posté(e)

Bonjour à tous !!

 

Je suis face à un problème qui me fais enrager :

Je veux modéliser une pale de ventilateur bien compliquée, sachant que j'ai les coordonnées d'un grand nombre de points de cette pale. Le problème c'est que je ne sais pas faire la modélisation par ce biais.

J'ai essayé ainsi : je me met dans part design et je crée à la main tous les points de mon objet;

je vais ensuite dans le module freestyle, qui me permet de réaliser des surfaces en reliant les points 4 par4...

et je retourne ensuite dans part design ou je réalise l'extrusion de toutes les surfaces de ma pièce...

 

C'est laborieux (je n'ai d'ailleurs pas fini)...

Je sais qu'il existe un module appelé "digitized shape design" mais je ne sais pas comment il marche: tout ce que je sais c'est qu'on peut importer des données de type .ascii pour réaliser la pièce.. Dans ce cas, le problème est que mes données sont de type .xls et que je ne sais pas les transformer...

 

Cependant, si vous savez faire ceci en rapide et efficace...

Posté(e)

salut

pour transformé ton fichier point "xls" tu change ton extension en txt et théoriquement ça marche.

à la limite envoie moi ton fichier xls et je te le transforme en fichier type asci avec l'extension et le séparateur de ton choix dnas le week end.

pilou_33@caramail.com

  • 4 semaines après...
Posté(e)

Depuis le temps, j'ai trouvé un élément de réponse à cette adresse :

http://cao.etudes.ecp.fr/index.php?page=faq.htm

 

le sujet étant intitulé : "Comment créer des points à partir d'un fichier excel contenant des coordonnées ?"

 

Et comme tout n'est pas parfait, et ben je n'ai pas réussi...J'ai une erreur qui apparait lors de l'éxécution de la macro...

 

Donc si quelqu'un à un idée à proposer...

 

Merci

Posté(e)

Bonjour

 

Dans l'editeurVBA d'excel va vérifier les références de la macro et coche toutes les bibliothèques commancant par CATIA.

 

puis reessaye la macro

 

@+

Connaître son ignorance est la meilleure part de la connaissance !http://mooneck.pagesperso-orange.fr/confucius_mini.gif

Posté(e)

Bonsoir,

 

J'ai bien tout coché mais cela ne fonctionne toujours pas. Jai toujour le message propriete ou methode non geree par cet objet.

 

Quel en est la cause si qqun sait...

 

Merci d'avance

Matthieu, webmaster de VUE 3D >> http://vue3d.free.fr

mail -> mattou3d@aol.com

Posté(e)

Ce genre d'erreur provient certainement (à 90%) d'une bibliotheque non referencée.

peux tu copier coller les lignes de codes et mettre en jaune la ligne qui bloque

 

merci

Connaître son ignorance est la meilleure part de la connaissance !http://mooneck.pagesperso-orange.fr/confucius_mini.gif

  • 2 semaines après...
Posté(e)

J'ai trouvé une réponse au problème !!

 

Il faut :

-ouvrir un part

-outils\macro\macro --> créer une macro...

voilà le code :

 

Sub CATMain

 

Dim myDoc As PartDocument

Set myDoc = CATIA.ActiveDocument

 

Dim myPart As Part

Set myPart = myDoc.Part

 

Dim hybridBodies1 As HybridBodies

Set hybridBodies1 = myPart.HybridBodies

 

Dim hybridBody1 As HybridBody

Set hybridBody1 = hybridBodies1.Add

 

Dim myHSFactory As HybridShapeFactory

Set myHSFactory = myPart.HybridShapeFactory

 

Dim ExcelApp As Excel.Application

Set ExcelApp = CreateObject("Excel.Application" )

 

FileName = "D:\AffairesEnCours\Temp\P3.xls"

ExcelApp.Workbooks.Open FileName

 

Dim myHSPointCoord As HybridShapePointCoord

Dim myHSPointCoord2 As HybridShapePointCoord

 

With ExcelApp.ActiveWorkbook.Sheets.Item(1)

For i = 1 to 5

Set myHSPointCoord = myHSFactory.AddNewPointCoord(.Cells(i,1).Value, .Cells(i, 2).Value, .Cells(i, 3).Value) (tout ça sur la même ligne)

hybridbody1.AppendHybridShape (myHSPointCoord)

myPart.Update

Next

End With

 

End Sub

 

en changeant le nom du fichier et le nombre de points ça devrait marcher....

 

voilà...pour moi ca fonctionne alors c'est que ca doit marcher pour tout le monde...

 

a bientot

 

 

  • 4 semaines après...
  • 3 mois après...
Posté(e)

GSD_PointSplineLoftFromEXcel

 

 

Dans Catia :

Démarrer l’atelier Générative Shape Design.

Il faut avoir un document de type part actif avec un corps principal comme objet de travail.

 

 

Dans Excel :

Ouvrir la macro GSD_PointSplineLoftFromEXcel

(chemin d’accès : Programs Files/Dassault/B16/intel-a/code/command)

Ouvrir VBA (touche Alt+F11)

Vérifier dans le menu Outils -Références que les références Catia sont actives sinon les activer puis enregistrer le classeur Excel (Merci Damien).

 

 

 

On peut :

Enregistrer le classeur Excel sous un autre nom.

 

On ne doit jamais :

Modifier le nom de la feuille1 du classeur Excel.

Mettre plus de 50 Splines dans la feuille.

Mettre plus de 500 Points par Spline.

Avoir des points adjacents trop proche (distance mini >0.001mm).

 

 

 

 

 

  • 1 an après...
Posté(e)
Ce genre d'erreur provient certainement (à 90%) d'une bibliotheque non referencée.

peux tu copier coller les lignes de codes et mettre en jaune la ligne qui bloque

 

merci

 

Voici le programme:

La première ligne "Sub Main ()" a l'air de bloquer...

J'aimerais bien faire fonctionner cette macro, donc si quelqu'un peut trouver l'erreur...

Merci.

 

'------------------------------------------------------------------------

'Main program

'------------------------------------------------------------------------

Sub Main()

 

'Get the type of operations to do:

' Points --> 1

' Splines + Points --> 2

' Loft + Splines + Points --> 3

 

 

Dim TypeFile As Integer

TypeFile = GetTypeFile

 

' V5R12 - Create dedicate opneBody for created geometry

'Get CATIA

Dim PtDoc As Object

Set PtDoc = GetCATIAPartDocument

 

' Create Open body

Set myHBody = PtDoc.Part.HybridBodies.Add()

Set referencebody = PtDoc.Part.CreateReferenceFromObject(myHBody)

PtDoc.Part.HybridShapeFactory.ChangeFeatureName referencebody, "GeometryFromExcel"

 

 

If TypeFile = 1 Then

CreationPoint

ElseIf TypeFile = 2 Then

CreationSpline

ElseIf TypeFile = 3 Then

CreationLoft

End If

 

 

End Sub

 

Posté(e)

Salut baba14,

 

essaye avec ca :

 

 

 Option Explicit
'------------------------------------------------------------------------ 'Main program
Sub Main()

'Get the type of operations to do:
' Points --> 1
' Splines + Points --> 2
' Loft + Splines + Points --> 3
Dim GetTypeFile As Integer
GetTypeFile = 1

Dim GetCATIAPartDocument As PartDocument
Dim myHBody As HybridBody
Dim referencebody As Reference
Set GetCATIAPartDocument = CATIA.ActiveDocument

Dim TypeFile As Integer
TypeFile = GetTypeFile

' V5R12 - Create dedicate opneBody for created geometry
'Get CATIA
Dim PtDoc As Object
Set PtDoc = GetCATIAPartDocument

' Create Open body
Set myHBody = PtDoc.Part.HybridBodies.Add()
Set referencebody = PtDoc.Part.CreateReferenceFromObject(myHBody)
PtDoc.Part.HybridShapeFactory.ChangeFeatureName referencebody, "GeometryFromExcel"


If TypeFile = 1 Then
CreationPoint
ElseIf TypeFile = 2 Then
CreationSpline
ElseIf TypeFile = 3 Then
CreationLoft
End If


End Sub

Public Sub CreationPoint()
   MsgBox "CreationPoint !"
End Sub
Public Sub CreationSpline()
   MsgBox "CreationSpline !"
End Sub
Public Sub CreationLoft()
   MsgBox "CreationLoft !"
End Sub

 

chez moi ca marche.

J'ai ajouté quelques déclaration supplémentaire car je n'ai pas le ton code complet.

 

+

Connaître son ignorance est la meilleure part de la connaissance !http://mooneck.pagesperso-orange.fr/confucius_mini.gif

  • 1 mois après...
Posté(e)

merci;

en fait j'ai changé de poste et ça marche...

 

Bref, en fait j'ai un autre souci (j'ai lancé un autre sujet pour cela, mais c'est à propos de cette macro): il n'est possible de créer qu'un seul et unique loft!!

 

Quelqu'un a-t-il une solution pour en créer plusieurs, comme pour les splines?

 

Merci!

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é