|
Deklaration
|
Parameter
|
Beschreibung
|
||
|---|---|---|---|---|
|
get (idpath, propName, categoryName)
|
• {string|string[]} idpath – ID-Pfad, wie z.B. '/0/1', oder ein Array von ID-Pfaden ['/0/1', '/0/2'].
• {string|string[]} propName – (Optional) Beispielsweise 'Display Name' oder ['Display Name', 'Part ID Path']
• {string|string[]} categoryName – (Optional) Beispielsweise 'PROE Parameters'.
|
Ruft ein Metadatenobjekt ab, das den ID-Pfad oder die Eigenschaftswerte für die angegebenen Parameter idpath und propName darstellt.
Diese Funktion gibt das Metadatenobjekt zurück, welches den angegebenen Parameter idpath darstellt, oder, falls propName angegeben ist, dann den Wert der Eigenschaft auf der Komponente.
Beispiel:
PTC.Metadata.fromId('model-1').then( (metadata) => {
|
||
|
getProp (propName, categoryName)
|
• {string|string[]} propName – (Optional) Beispielsweise 'Display Name' oder ['Display Name', 'Part ID Path']
• {string|string[]} categoryName – (Optional) Beispielsweise 'PROE Parameters'.
|
Diese Funktion gibt alle Zeichenfolgen-Eigenschaftswerte aus einer einzelnen Komponente oder nicht definiert zurück, wenn keine Daten/Komponenten verfügbar sind. Ist der angegebene Parameter propName ein Array, wird ein string[] von Werten zurückgegeben.
Beispiel:
PTC.Metadata.fromId('model-1').then( (metadata) => {
|
||
|
getCategory (categoryName)
|
• {string} categoryName
|
Diese Funktion gibt ein Objekt mit allen Eigenschaftsnamen und -Werten aus der angegebenen Kategorie zurück.
Beispiel:
PTC.Metadata.fromId('model-1').then( (metadata) => {
|
||
|
getSelected (selectFunc)
|
• {function} selectFunc – (Optional) Funktion, welche die in das zurückgegebene Array eingefügten Werte steuert. Für diese Funktion wird ein idpath angegeben sowie ein Argument und aktuelle Metadaten:
`this` function(idpath) {
|
Diese Funktion gibt ein Array aller Elemente, die von dem angegebenen Parameter selectFunc zurückgegeben wurden, zurück. Sollte selectFunc nicht definiert sein, so wird ein string[] von ID-Pfaden zurückgegeben.
Beispiel:
PTC.Metadata.fromId('model-1').then( (metadata) => {
|
||
|
find (propName, category)
|
• {string} propName – (Erforderlich)
• {string} category – (Optional)
|
Sucht Komponenten basierend auf Eigenschaftswerten. Siehe auch findCustom.
Gibt einen Finder für Komponenten basierend auf dem angegebenen Parameter propName und der Kategorie zurück.
Beispiel:
Der Vergleich kann wie folgt lauten:
- startsWith,like,sameAs,unlike : string comparison |
||
|
findCustom (whereFunc, selectFunc)
|
• {function} whereFunc – (Erforderlich)
• {function} selectFunc – (Optional)
|
Siehe auch find oben.
Diese Funktion gibt einen Finder für Komponenten basierend auf dem benutzerdefinierten Parameter whereFunc zurück. Das folgende Beispiel findet alle Komponenten mit depth<2 oder hat einen Namen wie z.B. 'ASM'.
Beispiel:
|
PTC.Metadata.fromId('model-1').then (metadata) => {
metadata.get('/0/6', 'Display Name')
=> "BLOWER.ASM"
metadata.get('/0/6'). getCategory ('__PV_SystemProperties')
=> {Component Name: "BLOWER.ASM", Display Name: "BLOWER.ASM", OL File Name: "", Part Depth: "3", Part ID: "6", …}
metadata.find('Display Name').like('PRT')
=> {id: "model-1", _friendlyName: "Display Name like PRT", _selectedPaths: Array(26)}
metadata.find('Display Name').like('PRT').find('Part Depth').in(0,3)
=> {id: "model-1", _friendlyName: "Display Name like PRT AND Part Depth in 0-3", _selectedPaths: Array(10)}
var meta = metadata.find('Part Depth').greaterThan(4);
meta.getSelected();
=>["/0", "/0/1", "/0/1/2", "/0/6"]
var selectFunc = function(idpath) {
return metadata.get(idpath, 'Display Name');
}
meta.getSelected(selectFunc);
=> ["PISTON.PRT", "PISTON_PIN.PRT", "CONNECTING_ROD.PRT"]
metadata.find('Part Depth').greaterThan(4).getSelected(selectFunc)
=> ["PISTON.PRT", "PISTON_PIN.PRT", "CONNECTING_ROD.PRT"]
var selectFunc = function(idpath) {
return metadata.get(idpath, 'Display Name');
}
metadata.find('Part Depth').greaterThan(4, selectFunc)
=> ["PISTON.PRT", "PISTON_PIN.PRT", "CONNECTING_ROD.PRT"]
var selectFunc = function(idpath) {return metadata.get(idpath, 'Display Name');}
metadata.find('Part Depth').greaterThan(4, selectFunc)
=> ["PISTON.PRT", "PISTON_PIN.PRT", "CONNECTING_ROD.PRT"]
var selectFunc = function(idpath) {return metadata.get(idpath, 'Display Name');}
metadata.find('Display Name').like('PISTON', selectFunc)
=> ["PISTON.ASM", "PISTON.PRT", "PISTON_PIN.PRT"]
var whereFunc = function(idpath) {
const depth = metadata.get(idpath, 'Part Depth')
const name = metadata.get(idpath, 'Display Name')
return parseFloat(depth) > 4 || (name && name.search('PISTON') >= 0)
}
var selectFunc = function(idpath) {return metadata.get(idpath, 'Display Name');}
metadata.findCustom(whereFunc,selectFunc)
=>["PISTON.ASM", "PISTON.PRT", "PISTON_PIN.PRT", "CONNECTING_ROD.PRT"]
var selectFunc = function(idpath) {
return metadata.get(idpath).getCategory('__PV_SystemProperties');
}
metadata.find('Part Depth').greaterThan(4, selectFunc)
=> (3) [{…}, {…}, {…}]
0: {Component Name: "PISTON.PRT", Display Name: "PISTON.PRT", OL File Name: "l-Creo 3D_0_ac-40_asm_5.ol" …}
1: {Component Name: "PISTON_PIN.PRT", Display Name: "PISTON_PIN.PRT", OL File Name: "l-Creo 3D_0_ac-40_asm_6.ol",…}
2: {Component Name: "CONNECTING_ROD.PRT", Display Name: "CONNECTING_ROD.PRT", OL File Name: "l-Creo 3D_0_ac-40_asm_7.ol", …}
|
Ansatz
|
Beschreibung
|
|---|---|
|
Beim Klicken oder einem Änderungsereignis
|
Rufen Sie das Abrufen von Metadaten über eine Schaltfläche, eine Eingabe oder das Auswählen eines Elements unter Verwendung eines Ereignisausdrucks auf.
1. Geben Sie getMetadata() in das Feld JS für das Ereignis Klicken ein.
.
2. Verwenden Sie anschließend den folgenden Codeausschnitt:
$scope.getMetadata = function(args) {
|
|
Beim Laden der Ansicht
|
Verwenden Sie das Ereignis $ionicView.afterEnter, um Metadaten abzurufen, sobald die Ansicht vollständig geladen wurde:
$scope.$on("$ionicView.afterEnter", (args) => {
|