Risultati da 1 a 10 di 10
  1. #1
    Moderatore
    Iscritto dal
    2007
    Messaggi
    974
    Professione
    Progettista/Disegnatore
    Regione
    Roma
    Software
    Mechanical, Inventor, 3DS Max

    Predefinito Baricentro di sottoassieme

    Ho cercato in varie discussioni che trattano l'argomento Baricentro, ma non ho risolto un paio di dubbi...

    Ho una tavola incernierata (come sottoassieme) ai due lati e, per dimensionarne gli attuatori devo calcolarne il baricentro...
    In ambiente assieme, la visualizzazione del baricentro indica solo il baricentro generale, non quello del sottoassieme tavola. Con le iProperty Collection mi sembra di aver capito che si dovrebbe risolvere il problema, ma per la 2012 sembra non ci siano... esistono ancora?
    Nell' idw è possibile indicare il baricentro ma sempre e solo quello generale... è possibile indicare anche quello di un sottoassieme?
    Mi sarebbe comodo per indicarne la posizione rispetto a punti predefiniti...

  2. #2
    Utente Standard L'avatar di pompeo79
    Iscritto dal
    2010
    Messaggi
    335
    Professione
    Digital Prototyping
    Regione
    Piemonte-Liguria
    Software
    Inventor - Autocad - Showcase

    Predefinito

    Citazione Originariamente Scritto da GiGa Visualizza Messaggio
    Ho cercato in varie discussioni che trattano l'argomento Baricentro, ma non ho risolto un paio di dubbi...

    Ho una tavola incernierata (come sottoassieme) ai due lati e, per dimensionarne gli attuatori devo calcolarne il baricentro...
    In ambiente assieme, la visualizzazione del baricentro indica solo il baricentro generale, non quello del sottoassieme tavola. Con le iProperty Collection mi sembra di aver capito che si dovrebbe risolvere il problema, ma per la 2012 sembra non ci siano... esistono ancora?
    Nell' idw è possibile indicare il baricentro ma sempre e solo quello generale... è possibile indicare anche quello di un sottoassieme?
    Mi sarebbe comodo per indicarne la posizione rispetto a punti predefiniti...

    Ciao Giga,
    il disegno è stato fatto con la 2012?

    C'è la macro che calcola e mette in tabella i baricentri dei sottoassiemi (anche con i volumi), ma con la 2012 non è applicabile.

    Se il disegno fosse fatto con la 2011 (o velocemente riproducibile con la 2011), potevi crearti (o farti creare da chi ha ancora la 2011) il file CSV per poi poterlo usare nelll'idw con la tua versione 2012 attraverso tabella.

    Altri metodi non ne vedo.

    Potresti, ma assai laborioso, inserire le viste dei sottoassiemi e "assemblarle" in tavola, così facendo potresti rappresentare il cog di ogni (sub)assieme, ma è, purtroppo, solo un escamotage

  3. #3
    Moderatore
    Iscritto dal
    2007
    Messaggi
    974
    Professione
    Progettista/Disegnatore
    Regione
    Roma
    Software
    Mechanical, Inventor, 3DS Max

    Predefinito

    Sì, fatto in 2012... vabbè, alla fine ho risolto con varie viste.
    Peccato però che non si possa fare in maniera diretta... forse con il modulo simulazione avrei risolto tutto ma magari avere il tempo di approfondire...

  4. #4
    Utente Standard L'avatar di AngeloB
    Iscritto dal
    2008
    Messaggi
    436
    Professione
    Ingegnere
    Regione
    Liguria
    Software
    Autocad, Inventor, Algor

    Predefinito

    In Inventor 2012
    Piazzo un punto in prossimità del baricentro che mi interessa e poi lo rendo visibile nella messa in tavola.

    Io ho anche TOP e con questo applicativo la procedura e automatica. cioè scelgo direttamente nella messa in tavola quale baricentro mostrare.

  5. #5
    Utente Standard L'avatar di pompeo79
    Iscritto dal
    2010
    Messaggi
    335
    Professione
    Digital Prototyping
    Regione
    Piemonte-Liguria
    Software
    Inventor - Autocad - Showcase

    Predefinito

    Citazione Originariamente Scritto da AngeloB Visualizza Messaggio
    In Inventor 2012
    Piazzo un punto in prossimità del baricentro che mi interessa e poi lo rendo visibile nella messa in tavola.

    Io ho anche TOP e con questo applicativo la procedura e automatica. cioè scelgo direttamente nella messa in tavola quale baricentro mostrare.
    Si, ma non risulta associativo al cambiare la tua geometria 3D.

    Prova questa macro, dovrebbe andare.



    Option Explicit
    Public Sub Scan_COG_assembly()
    ' Set reference to active document.
    ' This assumes the active document is an assembly
    Dim odoc As Inventor.Document
    Set odoc = ThisApplication.ActiveDocument
    If Not (TypeOf odoc Is AssemblyDocument) Then
    MsgBox "Select an assembly first"
    Exit Sub
    End If

    ' Get assembly component definition
    Dim oCompDef As Inventor.ComponentDefinition
    Set oCompDef = odoc.ComponentDefinition

    Dim sMsg As String
    Dim iLeafNodes As Long
    Dim iSubAssemblies As Long


    Dim outputfile As String
    outputfile = ThisApplication.FileLocations.Workspace + "\" + odoc.DisplayName + ".csv"
    Open outputfile For Output As #1
    On Error GoTo ErrorHandler
    Print #1, "Subassembly name", ",", "Cogx", ",", "Cogy", ",", "Cogz"

    ' Get all occurrences from component definition for Assembly document
    Dim oCompOcc As ComponentOccurrence
    For Each oCompOcc In oCompDef.Occurrences
    ' Check if it's child occurrence (leaf node)
    If oCompOcc.SubOccurrences.Count = 0 Then
    iLeafNodes = iLeafNodes + 1

    Else
    Call extract_cog(oCompOcc)
    iSubAssemblies = iSubAssemblies + 1
    Call processAllSubOcc(oCompOcc, _
    sMsg, _
    iLeafNodes, _
    iSubAssemblies) ' subassembly
    End If
    Next

    ErrorHandler:
    Close #1
    End Sub

    ' This function is called for processing sub assembly.� It is called recursively
    ' to iterate through the entire assembly tree.
    Private Sub processAllSubOcc(ByVal oCompOcc As ComponentOccurrence, _
    ByRef sMsg As String, _
    ByRef iLeafNodes As Long, _
    ByRef iSubAssemblies As Long)

    Dim oSubCompOcc As ComponentOccurrence
    For Each oSubCompOcc In oCompOcc.SubOccurrences
    ' Check if it's child occurrence (leaf node)
    If oSubCompOcc.SubOccurrences.Count = 0 Then
    iLeafNodes = iLeafNodes + 1

    Else
    Call extract_cog(oSubCompOcc)
    sMsg = sMsg + oSubCompOcc.Name + vbCr
    iSubAssemblies = iSubAssemblies + 1

    Call processAllSubOcc(oSubCompOcc, _
    sMsg, _
    iLeafNodes, _
    iSubAssemblies)
    End If
    Next
    End Sub

    Private Sub extract_cog(ByRef oCompOcc As ComponentOccurrence)
    Dim odoc As Object
    Set odoc = oCompOcc.Definition.Document
    Dim objUOM As UnitsOfMeasure
    Dim ocenterofmass As Point
    Set objUOM = odoc.UnitsOfMeasure
    If odoc.DocumentType = kAssemblyDocumentObject Then
    Set ocenterofmass = oCompOcc.MassProperties.CenterOfMass

    Dim cogx As String
    Dim cogy As String
    Dim cogz As String

    cogx = objUOM.GetStringFromValue(ocenterofmass.X, UnitsTypeEnum.kDefaultDisplayLengthUnits)
    cogy = objUOM.GetStringFromValue(ocenterofmass.Y, UnitsTypeEnum.kDefaultDisplayLengthUnits)
    cogz = objUOM.GetStringFromValue(ocenterofmass.Z, UnitsTypeEnum.kDefaultDisplayLengthUnits)

    'Write the COG data out as CSV text
    Print #1, oCompOcc.Name, ",", cogx, ",", cogy, ",", cogz

    End If

    End Sub

  6. #6
    Utente Standard L'avatar di AngeloB
    Iscritto dal
    2008
    Messaggi
    436
    Professione
    Ingegnere
    Regione
    Liguria
    Software
    Autocad, Inventor, Algor

    Predefinito

    Grazie pompeo, io non so come far girare le macro, ma sei stato cortese.

    C'è una cosa di Inventor che mi fa perdere molto tempo e non riesco a capire.
    In un assime posso creare piani ed assi di riferimento, poi posso mostrarli anche nelle tavole. OK
    Ma perche, nella messa in tavola, non posso utilizzarli direttamente per creare una sezione? sono costretto a ripetere un sacco di passaggi inutili.

    Ciao

  7. #7
    Utente Standard L'avatar di pompeo79
    Iscritto dal
    2010
    Messaggi
    335
    Professione
    Digital Prototyping
    Regione
    Piemonte-Liguria
    Software
    Inventor - Autocad - Showcase

    Predefinito

    nell'idw espandi la vista, tasto destro sul piano > includi

  8. #8
    Utente Standard L'avatar di AngeloB
    Iscritto dal
    2008
    Messaggi
    436
    Professione
    Ingegnere
    Regione
    Liguria
    Software
    Autocad, Inventor, Algor

    Predefinito

    è quello che faccio, ma è una perdita di tempo.
    il piano o la linea di riferimento dovrebbero essere, di per se, un riferimento per fare una sezione.

  9. #9
    Utente Standard L'avatar di pompeo79
    Iscritto dal
    2010
    Messaggi
    335
    Professione
    Digital Prototyping
    Regione
    Piemonte-Liguria
    Software
    Inventor - Autocad - Showcase

    Predefinito

    già. Ma il comando sezione ha bisogno necessariamente di una linea di schizzo per poter funzionare

  10. #10
    Utente Standard L'avatar di AngeloB
    Iscritto dal
    2008
    Messaggi
    436
    Professione
    Ingegnere
    Regione
    Liguria
    Software
    Autocad, Inventor, Algor

    Predefinito

    però, non è possibile proiettare direttamente linee e piani su uno schizzo.


  • Discussioni Simili

    1. idw - evidenziazione sottoassieme
      Di Christian76 nel forum Inventor
      Risposte: 2
      Ultimo Messaggio: 30-06-2011, 17: 21
    2. Sottoassieme regolabile
      Di power23 nel forum Creo Parametric - Assemblaggio
      Risposte: 12
      Ultimo Messaggio: 09-12-2010, 01: 10
    3. Specchiatura in sottoassieme
      Di scalva nel forum Solidworks
      Risposte: 4
      Ultimo Messaggio: 18-04-2008, 22: 35
    4. Da assieme a sottoassieme
      Di Leso nel forum Solid Edge
      Risposte: 2
      Ultimo Messaggio: 29-02-2008, 10: 37
    5. dissolvi sottoassieme
      Di Therapy? nel forum Inventor
      Risposte: 6
      Ultimo Messaggio: 30-01-2008, 18: 01

    Segnalibri

    Segnalibri

    Permessi di Scrittura

    • Tu non puoi inviare nuove discussioni
    • Tu non puoi inviare risposte
    • Tu non puoi inviare allegati
    • Tu non puoi modificare i tuoi messaggi
    •  





    CAD3D.it - la community dei progettisti