Hot News:

Mit Unterstützung durch:

  Foren auf CAD.de (alle Foren)
  SolidWorks
  Transofrmations Matrix

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 SOLIDWORKS
Autor Thema:  Transofrmations Matrix (1815 mal gelesen)

Ex-Mitglied

erstellt am: 17. Mrz. 2011 10:40    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat

Hallo

folgendes Problem. Es geht um Transformations Matrizen.

Es geht dabei um das auslesen und setzen dieser Werte. Als Grundlage dient eine Baugruppe.

Code:

// Methode "Get Transformations Matrix"
        private double[] GetTransformationMatrix(object sender)
        {
            Component2 swSelectComp = ManageBox.GetComponentFromContainer((string)((TreeViewItem)((cadTestBox)sender).tree_travers.SelectedItem).Header);
            MathTransform TransformMatrix = (MathTransform) swSelectComp.Transform2;
            double[] arrayData = (double[]) TransformMatrix.ArrayData;
            return arrayData;
        }

Wenn ich das richtig verstanden habe hole ich die mir ja von der Componente selbst. Meine Frage geht dahin ob das der richtige Ansatz ist und ob die ausgelesene Matrix vom Aufbau abweicht zum OpenGL Standard. 

MFG Daniel

mkkk
Mitglied



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

Beiträge: 105
Registriert: 04.03.2005

erstellt am: 17. Mrz. 2011 12:22    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

Den Aufbau der Matrix findest Du in der API-Hilfe unter:
"IMathTransform Interface"

Wenn ich mich richtig erinnere verwendet SW Zeilen- und OpenGL Spaltenvektoren innerhalb der Matrix.

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


Ex-Mitglied

erstellt am: 17. Mrz. 2011 12:30    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat

Hallo
danke erst mal für die Antwort,
entschuldige wenn ich nachfrage, ich muss halt recherchieren weil ich das ganze mehr oder weniger mir selbst beibringen muss!

Folgendes habe ich gefunden hoffe es richtig zu interpretieren:

SolidWorks Matrix

|a b c . - |
|d e f . - |
|g h i . - |
|j k l . m |

OpenGl ModelView Matrix

|a d g . j |
|b e h . k |
|c f i . l |
|- - - . - |

Axen:

abc
def
ghi

Translation:

jkl

Scale:

SW: m

GL: aei

Das heißt die Unterschiede liegen in der Anordnung der Elemente in der Matrix und dass das Scale bei SW 1 Wert ist und bei OGL aus 3 Werten besteht.

Gilt dabei |a e i|=m ?

Ist das so richtig?

[Diese Nachricht wurde von Fanfon am 17. Mrz. 2011 editiert.]

mkkk
Mitglied



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

Beiträge: 105
Registriert: 04.03.2005

erstellt am: 17. Mrz. 2011 14:02    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



Anzeige:Infos zum Werbeplatz >>

speedyPDM CAD APP für Andere, Datenaustausch, Allgemeine Werkzeuge

speedyPDM ist das führende technische Dokumenten- und Produktdatenmanagementsystem für Solidworks, Solid Edge, Inventor, AutoCAD, ZWCAD, BricsCAD, Office und Email inklusive Revisionsmanagement.


Ex-Mitglied

erstellt am: 01. Apr. 2011 12:29    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat

so ich habe jetzt ein problem, wie komme ich von den aus Component.Transform? werten zu den koordinaten die mit Solidworks anzeigt (also zum Ursprung?)
bzw. wie setze ich die dann?

in der api heißt es doch:

MathTransform mathTestTransform = Component.Transform2;
mathTestTransform.ArrayData = arrayData; // double[] arraydata
swSelectComp.SetTransformAndSolve2(mathTestTransform);

Die Werte setzen kann! Der Schritt mathTestTransform.ArrayData = arrayData; funktioniert aber nicht!

mfg Daniel

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)2024 CAD.de | Impressum | Datenschutz