Hot News:

Mit Unterstützung durch:

  Foren auf CAD.de (alle Foren)
  SolidWorks
  Übergabe des Arrays von C# an ICreateTransform

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
  
The VISUALIZER: Die gerenderte Realität
Autor Thema:  Übergabe des Arrays von C# an ICreateTransform (756 mal gelesen)
Krzysztof
Mitglied


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

Beiträge: 4
Registriert: 04.03.2008

erstellt am: 04. Mrz. 2008 08:45    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!

Habe Solidworks wie vorgeschrieben als COM-Referenz in mein Visual-C#-Express-Projekt eingebunden und würde nun gerne ICreateTransform nutzen. Die API-Hilfe sagt dazu folgendes:

Zitat:
Syntax (COM)

status = MathUtility->ICreateTransform ( ArrayData, &Transform )

Input:
(double*) ArrayData
Sixteen (16) components of the transform (see Remarks)

Output:
(LPMATHTRANSFORM*) transform
Newly created MathTransform object or NULL if the operation fails

Return:
(HRESULT) status
S_OK if successful


Wenn ich nun Visual C# Express
Code:
return swApp.IGetMathUtility().ICreateTransform(
eingebe, sagt das Tooltip, dass es gerne
Code:
ref double ArrayDataIn
übergeben bekäme.

Jetzt habe ich aber, wie es die API-Hilfe auch verlangt, ein sechzehnelementiges Array, das bei mir data heißt. Übergebe ich nun

Code:
ref data
bekomme ich folgende Fehlermeldung:
Code:
Fehler 1 Die beste Übereinstimmung für die überladene SldWorks.IMathUtility.ICreateTransform(ref double)-Methode hat einige ungültige Argumente. C:\Projects\Kabine\Kabine\UserInput.cs 74 20 Kabine
Fehler 2 1-Argument: kann nicht von "ref double[]" in "ref double" konvertiert werden. C:\Projects\Kabine\Kabine\UserInput.cs 74 65 Kabine
Wie übergebe ich das Array korrekt?

Viele Grüße
Krzysztof

PS.: Habe das Thema auch schon auf mycsharp.de gepostet.

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

Krzysztof
Mitglied


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

Beiträge: 4
Registriert: 04.03.2008

erstellt am: 06. Mrz. 2008 08:03    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

Das Problem ist sozusagen gelöst: Habe Antwort vom API-Support erhalten. ICreateTransform kann leider von C# aus nicht genutzt werden und ich soll stattdessen CreateTransfrom nutzen.

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