Hot News:

Mit Unterstützung durch:

  Foren auf CAD.de (alle Foren)
  NX
  UG/OPEN API - char (* text)[];

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 NX
  
AEC Drafting , eine App
Autor Thema:  UG/OPEN API - char (* text)[]; (985 mal gelesen)
liogets
Mitglied
Engineer


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

Beiträge: 161
Registriert: 22.10.2002

Win XP SP3
NX 6.0.5.3 (Produktiv)
NX8 (Test)

erstellt am: 17. Jan. 2003 12:50    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

Halllo,

ich hab Probleme mit der Verwendung einer Variable folgenden Types:  char (* text)[];

Die Deklaration wird so von einer Funktion verlangt.
Wie kann dieser Variable Werte korrekt zugwiesen werden?

Beispiel:

  char (* apptxt)[] = " test";
FEHLER: 'char [6]' kann nicht in 'char (*)[]' konvertiert werden


  char (* apptxt)[];
  char test[51] = "dim text test";

  apptxt = &test;
FEHLER: 'char (*)[51]' kann nicht in 'char (*)[]' konvertiert werden


  char (* apptxt)[];
  char test[51] = "dim text test";

  apptxt = test;
FEHLER: 'char [51]' kann nicht in 'char (*)[]' konvertiert werden


Habe nur rudimentäre Kenntnisse von C/C++ und plage mich immer damit rum. Kann mir  jemand einen Tipp geben?

Gruss Steffen

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

waldi
Mitglied
 Softwerker


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

Beiträge: 272
Registriert: 07.08.2001

erstellt am: 20. Jan. 2003 08:53    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 liogets 10 Unities + Antwort hilfreich

Hi,

die Funktion will von dir ein Array von char-Pointern, also ein String Array. Was du schreiben müsstest wäre vernutlich so etwas:
text[0]="hallo"
text[1]="duda".

Um welche Funktion geht es denn, vielleicht kann ich dir dann sagen, was du übergeben musst.

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

liogets
Mitglied
Engineer


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

Beiträge: 161
Registriert: 22.10.2002

Win XP SP3
NX 6.0.5.3 (Produktiv)
NX8 (Test)

erstellt am: 20. Jan. 2003 13:07    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

Ich habe ein Programm zur Erzeugung von Maßen. An diese Maße will ich nun zusätzlichen Text hängen.
Dazu möchte ich die Funktion "UF_DRF_set_appended_text()" verwenden. Dazu wird der Text in der Form:

  UF_DRF_appended_text_p_t  appended_text

benötigt.
Diese Structure muss wie folgt definiert werden:

- appended text location:  UF_DRF_appended_text_location_t location
- number of lines of appended tex:t  int num_lines
- appended text array: char** text

Bei der definietion des Text-Arrays habe ich aber immer Probleme.
 
          char ** text;

          UF_DRF_appended_text_t appended_text;

  appended_text.location = UF_DRF_APPENDED_TEXT_BELOW;
  appended_text.num_lines = 1;
  appended_text.text = text;

Auch die Erzeugung des Text gleich mit dem Maß über die jeweiligen Funktionen, z.B. "UF_DRF_create_horizontal_dim"
müsste eigentlich möglich sein. Dabei wird der Parameter für den Text benötigt:

- UF_DRF_text_t *  drf_text

Dieser wird wiederum wie folgt def.:

- user supplied dimension text string: char* user_dim_text
- number of lines of appended text: int lines_app_text
- appended text array: char(* appended_text)[ ]

Im Programm wie folgt:
     
      char (* apptxt)[];

      UF_DRF_text_t drf_text;

      drf_text.user_dim_text  = NULL;
      drf_text.lines_app_text = 1;
      drf_text.appended_text  = apptxt;


Wie kann ich nun diesem beiden Arrays der Textfelder korreckt Werte (Strings)  zuweisen?

Steffen

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

waldi
Mitglied
 Softwerker


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

Beiträge: 272
Registriert: 07.08.2001

erstellt am: 21. Jan. 2003 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 Nur für liogets 10 Unities + Antwort hilfreich

Hi,

schau mal in deinem UGOPEN Verzeichnis, da ist ein Beispiel zu den beiden Funktionen, ufd_drf_appended_text.c. Vielleicht hilft das.

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

liogets
Mitglied
Engineer


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

Beiträge: 161
Registriert: 22.10.2002

Win XP SP3
NX 6.0.5.3 (Produktiv)
NX8 (Test)

erstellt am: 21. Jan. 2003 08:59    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

Habe Antwort in UG/Answer erhalten.

Für appended Text direkt bei der Erzeugung des Maßes gilt folgendes:

      char apptxt[1][132+1] = {"APPENDED TEXT"};

      UF_DRF_text_t drf_text;

      drf_text.user_dim_text  = NULL;
      drf_text.lines_app_text = 1;
      drf_text.appended_text  = (char (*)[]) apptxt;

mit folgenden Einstellungen damit der Text dann auch angezeigt wird:

  int mpi_old[100], mpi[100];

  char diameter[7], radius[7];

  double  mpr[70];

  UF_DRF_ask_preferences(mpi_old, mpr, radius, diameter);

  UF_DRF_ask_preferences(mpi, mpr, radius, diameter);

      mpi[0] = 0; /* Automatic Text and Arrow placement */
      mpi[7] = 2; /* AUTOMATIC TEXT and APPENDED TEXT */
      mpi[8] = 1; /* Appended text BELOW */
 
  UF_DRF_set_preferences(mpi, mpr, radius, diameter)

So funktioniert es sehr gut, einfach nur noch das Maß platzieren:

    UF_DRF_create_horizontal_dim(&dim1, &dim2, &drf_text, origin, &dimension_tag);

Danke aber für die Mühe,

Gruss Steffen.

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