Hot News:

Mit Unterstützung durch:

  Foren auf CAD.de
  CATIA V5 Allgemein
  Verschiebung innerhalb eines Produkts

Antwort erstellen  Neues Thema erstellen
CAD.de Login | Logout | Profil | Profil bearbeiten | Registrieren | Voreinstellungen | Hilfe | Suchen

Anzeige:

Darstellung des Themas zum Ausdrucken. Bitte dann die Druckfunktion des Browsers verwenden. | Suche nach Beiträgen nächster neuer Beitrag | nächster älterer Beitrag
  
Gut zu wissen: Hilfreiche Tipps und Tricks aus der Praxis prägnant, und auf den Punkt gebracht für CATIA & Co.
  
Mit dem all4cad-Blog immer bestens informiert! - Neues zu Lösungen und Entwicklungen rund um ERP und PDM, eine Pressemitteilung
Autor Thema:  Verschiebung innerhalb eines Produkts (1352 mal gelesen)
lukas304
Mitglied
Konstrukteur


Sehen Sie sich das Profil von lukas304 an!   Senden Sie eine Private Message an lukas304  Schreiben Sie einen Gästebucheintrag für lukas304

Beiträge: 150
Registriert: 26.01.2010

Intel Core(TM) i7-4790CPU 3,60GHz
Arbeitsspeicher 16,0 GB
NVIDIA Quadro K2200
Windows 10 pro
2x 24" TFT-Monitor
Catia V5 R19 / R26 /R30
SpaceMouse Pro

erstellt am: 03. Jan. 2013 15:44    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

Hallo zusammen,

hab' da mal wieder 'ne Frage.

Folgendermaßen: Es existiert ein Produkt inkl. das dazugehörige Drawing mit den einzeln detaillierten Parts. Nun gibt es kundenseitig eine Überarbeitung (z.B. Fahrzeug-Facelift).
Jetzt möchte ich natürlich dieses vorhandene Produkt dazu nutzen und an die neue Situation anpassen, um mir die Arbeit der Neudetaillierung zu ersparen.
Jetzt ist es aber nun so, dass einige der Parts innerhalb des Produktes in eine andere Position und zwar nicht nur linear, sondern auch mit Winkel, verschoben werden müssen.
Jetzt hätte man natürlich die Möglichkeit, diese Parts in eine Komponente zu packen, um dann das Gesamtpaket an die neue Position zu setzen. Wenn mann diese aber tut, verliert man im Drawing den Link der einzelnen Parts. Das gleiche passiert, wenn man es mit einem Hilfsprodukt versucht.
Welche Möglichkeiten hätte man nun noch, um mehrere aneinanderhängende Einzelteile auf einmal neu zu positionieren (verschieben (linear) und verdrehen (Winkel))?
Oder gibt es eine Möglichkeit, verlorengegangene Links wieder zu replacen, weil momentan zeigt er nach so einer Verschiebeaktion nur noch Produkte als Auswahl.
Hoffe, ich habe mich einigermaßen verständlich ausgedrückt.

Bin für jeden Tip dankbar


gruß
lukas304

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

RSchulz
Ehrenmitglied V.I.P. h.c.
Head of CAD, Content & Collaboration / IT-Manager



Sehen Sie sich das Profil von RSchulz an!   Senden Sie eine Private Message an RSchulz  Schreiben Sie einen Gästebucheintrag für RSchulz

Beiträge: 5541
Registriert: 12.04.2007

@Work
Lenovo P510
Xeon E5-1630v4
64GB DDR4
Quadro P2000
256GB PCIe SSD
512GB SSD
SmarTeam V5-6 R2016 Sp04
CATIA V5-6 R2016 Sp05
E3.Series V2019
Altium Designer/Concord 19
Win 10 Pro x64

erstellt am: 03. Jan. 2013 16:42    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für lukas304 10 Unities + Antwort hilfreich

Hallo Lukas,

Zitat:
Original erstellt von lukas304:
Welche Möglichkeiten hätte man nun noch, um mehrere aneinanderhängende Einzelteile auf einmal neu zu positionieren (verschieben (linear) und verdrehen (Winkel))?


Ich weis ja nicht, wie du die verschiebst, aber per Hand kannst du auch alle markieren und dann gleichzeitig verschieben. Per Bedingungen müsstest du wohl alle Teile einzeln anpacken bzw. die vorhandenen Bedingungen entsprechend ändern.

Zitat:
Original erstellt von lukas304:
Oder gibt es eine Möglichkeit, verlorengegangene Links wieder zu replacen, weil momentan zeigt er nach so einer Verschiebeaktion nur noch Produkte als Auswahl.
Hoffe, ich habe mich einigermaßen verständlich ausgedrückt.

Per rechte Maustaste auf die Ansicht > Objekt .x. > Verknüpfung ändern > defekten Link anwählen und löschen > unten in das Fenster klicken > ins Part wechseln > anwählen > zurück in die Zeichnung wechseln > "Alle hinzufügen" betätigen und mit OK bestätigen...

Allerdings verstehe ich nicht, warum du die Links nicht entweder auf die Partdokument unabhängig generierst oder eben das Produkt abbildest. Alles andere ist eigentlich eher unsauber!

------------------
MFG
Rick Schulz

Nettiquette (CAD.de)  -  Was ist die Systeminfo?  -  Wie man Fragen richtig stellt.  -  Unities

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

HoBLila
Mitglied
Dipl.-Ing. (BA) praktische Informatik - Senior Entwickler CAx


Sehen Sie sich das Profil von HoBLila an!   Senden Sie eine Private Message an HoBLila  Schreiben Sie einen Gästebucheintrag für HoBLila

Beiträge: 1118
Registriert: 29.05.2008

DELL PRECISION T3500
Intel(R) Xeon(R) CPU W3540 @ 2.93GHz
12285 MB RAM
NVIDIA Quadro FX 1800
Microsoft Windows 7 Enterprise Service Pack 1
CATIA V5 R19 SP09 HF69
VB6.5
CAA RADE CDC

erstellt am: 04. Jan. 2013 11:04    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für lukas304 10 Unities + Antwort hilfreich

Ist schon zu lange her um genaueres zu sagen, aber ich hatte einmal ein Makro geschrieben http://hoblila.wordpress.com/download/ welches sich mit Verdrehungen von Achsensystem und so beschäftigte.

Eventuell müsste ich nur eine Kleinigkeit ändern, damit es auf Deinen Fall passt, denn mehrere Teile auf einmal kann es glaube ich nicht.

------------------
Mit freundlichen Grüßen,
Henry Schneider
alias Lila

Es gibt einen ewigen Wettkampf zwischen der Natur und den Ingenieuren:
Die Ingenieure versuchen, immer idioten-sicherere Systeme zu bauen,
die Natur versucht, immer bessere Idioten zu bauen

Xing

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

RSchulz
Ehrenmitglied V.I.P. h.c.
Head of CAD, Content & Collaboration / IT-Manager



Sehen Sie sich das Profil von RSchulz an!   Senden Sie eine Private Message an RSchulz  Schreiben Sie einen Gästebucheintrag für RSchulz

Beiträge: 5541
Registriert: 12.04.2007

@Work
Lenovo P510
Xeon E5-1630v4
64GB DDR4
Quadro P2000
256GB PCIe SSD
512GB SSD
SmarTeam V5-6 R2016 Sp04
CATIA V5-6 R2016 Sp05
E3.Series V2019
Altium Designer/Concord 19
Win 10 Pro x64

erstellt am: 04. Jan. 2013 11:31    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für lukas304 10 Unities + Antwort hilfreich

Zitat:
Original erstellt von HoBLila:
Ist schon zu lange her um genaueres zu sagen, aber ich hatte einmal ein Makro geschrieben http://hoblila.wordpress.com/download/ welches sich mit Verdrehungen von Achsensystem und so beschäftigte.

Eventuell müsste ich nur eine Kleinigkeit ändern, damit es auf Deinen Fall passt, denn mehrere Teile auf einmal kann es glaube ich nicht.


Hallo Henry,

ich glaube nicht, dass das reicht, da mehrere Komponenten verschoben werden müssen und die Aufhängung immer eine andere sein dürfte bzw. eben nicht mit den gleichen Werten vor allem bei Winkeln verschoben werden kann. Ich hätte mir gerne mal den Code angeschaut, aber du mit dem Kennwort wieder :D

Ich muss allerdings gestehen, dass ich gerade selbst mit dem Move-Befehl zu Gange bin und den noch nicht ganz verstanden habe. Dokumentationen sucht man ja vergebens und das Beispiel in der Automation ist ja wohl ein schlechter Scherz! Vor allem bei einer solchen Funktion, die bei Fehlberechnungen zu unsicheren Zuständen und Fehldarstellungen führen kann. Was ich da schon alles gemorphed habe :D

Naja für meine Zwecke ausreichend und funktionstüchtig hatte ich mir jedenfalls folgendes programmiert...

Code:

    Public Sub Product_MoveComponent(ByVal WorkProduct As ProductStructureTypeLib.Product, ByVal ComponentName As String, Optional ByVal xMove As Double = 0, Optional ByVal yMove As Double = 0, Optional ByVal zMove As Double = 0, Optional ByVal xRotation As Double = 0, Optional ByVal yRotation As Double = 0, Optional ByVal zRotation As Double = 0)

        Dim oDoc As ProductStructureTypeLib.Product
        Dim oMovableObj As INFITF.Move
        Dim TransArray(11)
        Dim DegValue As Double
        Dim RadValue1 As Double
        Dim RadValue2 As Double
        Dim DegRad As Double

        Try

            DegRad = Math.PI / 180

            oDoc = WorkProduct.Products.Item(ComponentName)
            oMovableObj = oDoc.Move

            'Rotate on X-Axis
            If xRotation <> 0 Then
                DegValue = xRotation
                DegValue = DegValue * DegRad
                RadValue1 = Math.Sin(DegValue)
                RadValue2 = Math.Cos(DegValue)
                'Vector X-Axis rotate
                TransArray(0) = 1
                TransArray(1) = 0
                TransArray(2) = 0
                'Vector Y-Axis rotate
                TransArray(3) = 0
                TransArray(4) = RadValue2
                TransArray(5) = RadValue1
                'Vector Z-Axis rotate
                TransArray(6) = 0
                TransArray(7) = -RadValue1
                TransArray(8) = RadValue2
                'Vector xyz distance
                TransArray(9) = 0.0
                TransArray(10) = 0.0
                TransArray(11) = 0.0

                oMovableObj.Apply(TransArray)
            End If

            'Rotate on Y-Axis 
            If yRotation <> 0 Then         
                DegValue = yRotation
                DegValue = DegValue * DegRad
                RadValue1 = Math.Sin(DegValue)
                RadValue2 = Math.Cos(DegValue)
                'Vector X-Axis rotate
                TransArray(0) = RadValue2
                TransArray(1) = 0
                TransArray(2) = -RadValue1
                'Vector Y-Axis rotate
                TransArray(3) = 0
                TransArray(4) = 1
                TransArray(5) = 0
                'Vector Z-Axis rotate
                TransArray(6) = RadValue1
                TransArray(7) = 0
                TransArray(8) = RadValue2
                'Vector xyz distance
                TransArray(9) = 0.0
                TransArray(10) = 0.0
                TransArray(11) = 0.0

                oMovableObj.Apply(TransArray)
            End If

            'Rotate on Z-Axis
            If zRotation <> 0 Then
                DegValue = zRotation
                DegValue = DegValue * DegRad
                RadValue1 = Math.Sin(DegValue)
                RadValue2 = Math.Cos(DegValue)
                'Vector X-Axis rotate
                TransArray(0) = RadValue2
                TransArray(1) = RadValue1
                TransArray(2) = 0
                'Vector Y-Axis rotate
                TransArray(3) = -RadValue1
                TransArray(4) = RadValue2
                TransArray(5) = 0
                'Vector Z-Axis rotate
                TransArray(6) = 0
                TransArray(7) = 0
                TransArray(8) = 1
                'Vector xyz distance
                TransArray(9) = 0.0
                TransArray(10) = 0.0
                TransArray(11) = 0.0

                oMovableObj.Apply(TransArray)

            End If

            'Move
            If xMove <> 0 Or yMove <> 0 Or zMove <> 0 Then
                'Vector X-Axis rotate
                TransArray(0) = 1
                TransArray(1) = 0
                TransArray(2) = 0
                'Vector Y-Axis rotate
                TransArray(3) = 0
                TransArray(4) = 1
                TransArray(5) = 0
                'Vector Z-Axis rotate
                TransArray(6) = 0
                TransArray(7) = 0
                TransArray(8) = 1
                'Vector xyz distance
                TransArray(9) = xMove
                TransArray(10) = yMove
                TransArray(11) = zMove

                oMovableObj.Apply(TransArray)

            End If

        Catch ex As Exception

            MsgBox(ex.ToString, MsgBoxStyle.Critical, "Fehler in Functions: Product_MoveComponent")

        End Try

    End Sub


------------------
MFG
Rick Schulz

Nettiquette (CAD.de)  -  Was ist die Systeminfo?  -  Wie man Fragen richtig stellt.  -  Unities

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Anzeige.:

Anzeige: (Infos zum Werbeplatz >>)

Darstellung des Themas zum Ausdrucken. Bitte dann die Druckfunktion des Browsers verwenden. | Suche nach Beiträgen

nächster neuerer Beitrag | nächster älterer Beitrag
Antwort erstellen


Diesen Beitrag mit Lesezeichen versehen ... | Nach anderen Beiträgen suchen | CAD.de-Newsletter

Administrative Optionen: Beitrag schliessen | Archivieren/Bewegen | Beitrag melden!

Fragen und Anregungen: Kritik-Forum | Neues aus der Community: Community-Forum

(c)2025 CAD.de | Impressum | Datenschutz