application par défaut d'un matériau
2 participants
Page 1 sur 1
application par défaut d'un matériau
Ma question est peut être toute bête mais je trouve aucune info dessus sur le web ...
J'utilise beaucoup de pièces en alu dans mes études pour mon taf' et la problématique du poids est très importante. On aimerait donc, plutot que de créer une part et y insérer le matériau ensuite, créer une part liée automatiquement à un matériau.
Je m'explique un peu mieux : je crée une nouvelle part où catia applique directement l'alu comme matériau.
Est ce possible de faire ca ? si oui, comment ?
merci pour vos réponses
J'utilise beaucoup de pièces en alu dans mes études pour mon taf' et la problématique du poids est très importante. On aimerait donc, plutot que de créer une part et y insérer le matériau ensuite, créer une part liée automatiquement à un matériau.
Je m'explique un peu mieux : je crée une nouvelle part où catia applique directement l'alu comme matériau.
Est ce possible de faire ca ? si oui, comment ?
merci pour vos réponses
arnaud_68121- timide
- Messages : 17
Date d'inscription : 27/11/2011
Localisation : Urbès
Re: application par défaut d'un matériau
je dirai oui, tu peut créer une macro qui te crée une nouvelle pièce et qui lui associe directement un matériau, sinon, dans les options de catia, je ne croix pas avoir déjà vu ça.
flo- Fédérateur
- Messages : 455
Date d'inscription : 21/01/2011
Age : 34
Localisation : Angers
Re: application par défaut d'un matériau
J'ai deja posté sur les macros mais je ne sais pas si qqn ici en tout cas saurait programmer qqch du genre ... C'est plus de la progra pure que du Catia ...
Moi c'est sur que non en tout cas mais si qqn a une idée je prend bien entendu !
Moi c'est sur que non en tout cas mais si qqn a une idée je prend bien entendu !
arnaud_68121- timide
- Messages : 17
Date d'inscription : 27/11/2011
Localisation : Urbès
Re: application par défaut d'un matériau
Créer une macro vba et colle ce code, normalement ça marche (chez moi c'est bon)
Tu peut également créer une variante pour ajouter un matériau lorsque tu créer une part en l'insérant directement dans un product.
- Code:
Sub CATMain()
Dim product1 As Product
Dim documents1 As Documents
Set documents1 = CATIA.Documents
Dim partDocument1 As Document
'creation de part
Set partDocument1 = documents1.Add("Part")
Set partDocument1 = CATIA.ActiveDocument
Set product1 = partDocument1.GetItem(partDocument1.Name)
NomPart = InputBox("Nom de la part", "Création de part")
If NomPart <> "" Then
product1.PartNumber = NomPart
product1.Update
End If
'ajout de matière
Dim matCatalogPath As String
CATIA.DisplayFileAlerts = False
Dim oMaterial_document As Document
Set oMaterial_document = CATIA.Documents.Read("C:\Program Files\Dassault Systemes\B20\intel_a\startup\materials\Catalog.CATMaterial") 'le chemin du catalogue peut être changé si besoin
Dim oMaterial1 As Material
Set oMaterial1 = oMaterial_document.Families.Item("Metal").Materials.Item("Aluminium")
Dim oManager As MaterialManager
Dim oPartDocument As Document
Set oPartDocument = CATIA.ActiveDocument
Dim oPart As Part
Set oPart = oPartDocument.Part
Set oManager = oPart.GetItem("CATMatManagerVBExt")
oManager.ApplyMaterialOnPart oPart, oMaterial1, 0
oMaterial_document.Close
Exit Sub
End Sub
Tu peut également créer une variante pour ajouter un matériau lorsque tu créer une part en l'insérant directement dans un product.
flo- Fédérateur
- Messages : 455
Date d'inscription : 21/01/2011
Age : 34
Localisation : Angers
Re: application par défaut d'un matériau
ton code marche super, si c'est toi qui l'a crée aussi vite c'est balèze c'est pas du tout mon domaine et ma formation n'y touche meme pas ...
par contre pour moi il serait effectivement plus intéressant de créer un ptit bouton de commande mais aussi d'intégrer la part dans un produit actif ...
je sais absolument pas comment faire ...
parce que la dans ton code, si un produit est ouvert en meme temps dans catia, la macro plante avant d'appliquer le materiau, pour mon cas il faudrait que ma part s'integre à mon produit directement.
Merci pour ton aide
par contre pour moi il serait effectivement plus intéressant de créer un ptit bouton de commande mais aussi d'intégrer la part dans un produit actif ...
je sais absolument pas comment faire ...
parce que la dans ton code, si un produit est ouvert en meme temps dans catia, la macro plante avant d'appliquer le materiau, pour mon cas il faudrait que ma part s'integre à mon produit directement.
Merci pour ton aide
arnaud_68121- timide
- Messages : 17
Date d'inscription : 27/11/2011
Localisation : Urbès
Re: application par défaut d'un matériau
pour le code, je me suis inspiré de CATIA_Portable_Script_Center_v2.0, et pour le reste, je regarde ça se soir. Et pour créer un bouton, tu vas dans affochage, barre d'outils, personnaliser, commande puis macros (en bas dans le fenetre de gauche), et affichage des propriétés, et et tu peut mettre une icone, puis tu fait glisser le macro vers la barre d'outils.
flo- Fédérateur
- Messages : 455
Date d'inscription : 21/01/2011
Age : 34
Localisation : Angers
Re: application par défaut d'un matériau
dac' je te remercie, j'attend ta version du code
ton aide est plus que précieuse
ton aide est plus que précieuse
arnaud_68121- timide
- Messages : 17
Date d'inscription : 27/11/2011
Localisation : Urbès
Re: application par défaut d'un matériau
voila le code pour créer une part à partir d'un product, mais après, je n'y arrive pas, il faudrai le code pour entrer dans le part, du style "Edit", mais j'ai essayé CATIA.StartDommand "Edit" et CATIA.StartWorkbench ("PrtCfg") mais ça ne marche pas, alors si d'autres ont des idées...
- Code:
'creation de part a partir d'un product
Dim productDocument1 As Document
Set productDocument1 = CATIA.ActiveDocument
Set product1 = productDocument1.Product
Dim products1 As Products
Set products1 = product1.Products
Dim product2 As Product
NomPart = InputBox("Nom de la part", "Création de part")
If NomPart <> "" Then
Set product2 = products1.AddNewComponent("Part", "")
Else
Set product2 = products1.AddNewComponent("Part", "")
NomPart = product2.PartNumber
End If
flo- Fédérateur
- Messages : 455
Date d'inscription : 21/01/2011
Age : 34
Localisation : Angers
Page 1 sur 1
Permission de ce forum:
Vous ne pouvez pas répondre aux sujets dans ce forum
|
|