Hallo Alois,
hier ist ein Teil des Codings:
zuerst wird ein Teil der Kurve selektiert,
dann wird die übergeordnete Kurve gesucht und gefunden
und dann verliesen sie ihn.
// Array initialisieren
var options = new Array();
var auswahl = void null;
options.push ("curve");
// jetzt kann nur eine Kurve selektiert werden.
// selectItems ist eigene (kopiert von Mr. Lewis) function
auswahl = selectItems(options,1);
// ausgewähltes ist eine Kurve (Kurvenelement)
var curvesel = auswahl.Item(0);
// und hat auch eine ID
var SelecId = curvesel.SelItem.Id
// alle Kurven durchscannen bis ID kommt
FeatAr = new pfcCreate("pfcFeatures");
FeatAr = solidMdl.ListFeaturesByType(false,pfcCreate ("pfcFeatureType").FEATTYPE_CURVE);
// heraussuchen welche ID die Kurvenelemente haben
for (i = 0; i < FeatAr.Count; i++)
{
FeatItem = FeatAr.Item(i);
OutString = ("Nummer = "+i+"\n");
OutString += ("Typ = "+FeatItem.FeatTypeName+"\n");
OutString += ("ID = "+FeatItem.Id+"\n");
// Lösung mit Subitems
FeatSubs = FeatItem.ListSubItems(pfcCreate ("pfcModelItemType").ITEM_CURVE);
// Kurve hat auch Subitems
OutString += ("Anzahl SubKinder = "+FeatSubs.Count+"\n");
FoundId = false;
// Durch alle Subitems
for (j = 0; j < FeatSubs.Count; j++)
{
FeatSub = FeatSubs.Item(j);
OutString += ("Kind "+j+" Id = "+FeatSub.Id+"\n");
if (FeatSub.Id == SelecId)
{
FoundId = true;
var ParCurve = FeatItem;
}
}
OutString += ("\ngefunden = "+FoundId);
alert (OutString);
}
if (FoundId ==true)
{
// Gesamtkurvenzug wurde gefunden
// einzelne Teile werden durchgescannt und die Daten extrahiert
// wir haben ein Kurvenzugobjekt: ParCurve
// und die ID: ParCurve.Id
// ab hier gehts nicht weiter
ParElem = new pfcCreate("pfcCurves");
ParElem = ParCurve.ListElements();
ParCurvTyp = new pfcCreate("pfcCurveType");
ParCurvTyp = ParCurve.GetCurveType();
// beiden Stimmt nicht
} else
{
alert ("Kein übergeordneter Kurvenzug gefunden");
}
Nachdem ich das Objekt des Kurvenzugs und seine ID habe möchte ich mit ListElements (Methode der Klasse pfcCompositeCurve)oder mit anderen Methode bis auf die einzelnen Linienstücke und Bögen herunterkommen um deren Definition auslesen zu können.
Vielleicht wird es jetzt klarer wo es bei mir hängt.
Gruß Thomas
------------------
nixblick
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP