Hot News:

Mit Unterstützung durch:

  Foren auf CAD.de (alle Foren)
  CATIA V5 Programmierung
  Dimensionsloses Array erstellen?

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
Autor Thema:  Dimensionsloses Array erstellen? (879 mal gelesen)
theshadog
Mitglied



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

Beiträge: 61
Registriert: 18.03.2009

erstellt am: 03. Apr. 2009 16: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

Hi Leute!

Kann man in CATScript kein dimensionsloses Array erstellen wie in VB? Wenn ich den code so hab, wie hier, zeigt er mir an "Index außerhalb des gültigen Bereichs". Schreib ich stattdessen Dim reference(3) as reference, kommt diese Fehlermeldung nicht. Oder initialisiere ich das Array falsch?

Anbei mal der Code:

Code:
Dim i as Integer
i = 0
dim reference() as reference
'Selectieren und ableiten
do
ableitung (i)
Dim hybridShapes As HybridShapes
Set hybridShapes = hybridBody.HybridShapes
Set ableiten = hybridShapes.Item("Ableitung." & i)
Set reference(i) = bauteil.CreateReferenceFromObject(ableiten)
bauteil.InWorkObject = ableiten
i = i + 1
' Abfrage, ob weitere Flaeche abgeleiten werden soll
Dim Message, Style, Title, Response, MyString
Message = ("Weitere Flaeche ableiten?")
Style = vbYesNo + vbDefaultButton2
Title = "Continue?" 
Response = MsgBox(Message, Style, Title)
If Response = vbYes Then
mystring = "yes"
else
mystring = "no"
End if
loop while mystring = "yes"

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

denyo_1
Moderator
Manager


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

Beiträge: 2506
Registriert: 10.08.2005

HP Compaq 8710w, Intel Core Duo T7700, 2,40 Ghz, 3GB RAM, Windows XP Professionel @32bit, Quadro FX 1600M, CATIA V5 R19 SP3

erstellt am: 04. Apr. 2009 14:51    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 theshadog 10 Unities + Antwort hilfreich

Hallo theshadog,

das was du vorhast funktioniert IMHO auch nicht in VB. Du braucht einen ReDim Preserve um ein dimensionsloses Array nach der Deklaration mit "Dim" nochmal einen Dimemsion zuzuweisen (ohne die geht es nicht). Schau dir mal das Beispiel hier an:

Code:

Sub CATMain()

    Dim myArray()
    Dim Counter As Integer
    Counter = -1
    Do
        Counter = Counter + 1
        'Hier wird dem dimemsionslosen Array eine Dimension zugewiesen!!!
        ReDim Preserve myArray(Counter)
        myArray(Counter) = "Array-Position Nr.: " & UBound(myArray)
    Loop Until Counter = 2
   
    Dim M1, M2, M3, M4, Title, Skin
    M1 = "Das Array sieht folgendermaßen aus:"
    M2 = "1 Zeile: " & myArray(0)
    M3 = "2 Zeile: " & myArray(1)
    M4 = "3 Zeile: " & myArray(2)
    Title = "Ergebniss"
    Skin = vbInformation + vbOKOnly
   
    Box = MsgBox(M1 + Chr(10) + Chr(10) + M2 + Chr(10) + M3 + Chr(10) + M4, Skin, Title)
   
End Sub


------------------
MFG Daniel

Die KATJA ist halt doch nur ne zickige Französin

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

theshadog
Mitglied



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

Beiträge: 61
Registriert: 18.03.2009

erstellt am: 07. Apr. 2009 09:39    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

Hat super funkioniert, danke!

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