Hallo,
Ich versuche, eine Waferkarte zu erstellen und die Position der Wohnung anzugeben.
Ich habe es geschafft, die Karte zu erstellen, aber die Verwendung der Funktion „Pfad“ zum Erstellen der Waferränder war nicht erfolgreich ... Also habe ich versucht, die Funktion „Kreis“ zu verwenden und sie dort zu schneiden, wo die Ebene sein sollte.
Das Ergebnis ist im rechten Bild unten dargestellt.
Es gibt 2 Instabilitäten:
1/ Der Kreis scheint anders zu skalieren als das Fenster selbst!
2/ Wenn ich versuche, das Bild mit der Funktion „Bild speichern“ zu speichern, verschieben sich die Waferränder (siehe linkes Bild unten)!
Meine Fragen:
1/ Gibt es eine Möglichkeit, beim Speichern des Bildes den Waferrand einschließlich der Fläche auf einfache und stabile Weise zu erhalten?
2/ Ist es auch möglich, es an XCoord und Ycoord zu binden? (Bedeutet stabil gegenüber Fensterskalierung?).
Anbei finden Sie die Datentabelle (ShotMap_Test.jmp) und die zum Erstellen der Karte benötigte Tabelle (WaferMap.jmp).
Anbei auch das Skript, das ich verwendet habe (es ist auch an die Datentabelle angehängt)
Vielen Dank im Voraus.
dt = Open( "ShotMap_Test.jmp" );
Biv = dt << Graph Builder(
Size( 511, 557 ),
Variables( X( :XCoord ), Y( :YCoord ), Color( :Value ) ),
Elements( Heatmap( X, Y, Legend( 5 ) ) ),
//Line({1,2}, {3,0}, {2,4});
SendToReport(
Dispatch(
{},
"XCoord",
ScaleBox,
{Min( -13 ), Max( 27 ), Inc( 1 ), Minor Ticks( 0 ), Show Major Grid( 1 ), Show Minor Grid( 1 ), Inside Ticks( 1 )}
),
Dispatch(
{},
"YCoord",
ScaleBox,
{Min( -6 ), Max( 70 ), Inc( 1 ), Minor Ticks( 0 ), Show Major Grid( 1 ), Show Minor Grid( 1 ), Inside Ticks( 1 )}
),
Dispatch(
{},
"400",
ScaleBox,
{Legend Model(
5,
Properties( 0, {gradient( {Color Theme( "Green Yellow Red" )} )} )
)}
)
)
);
WaferMap = Open( "WaferMap.jmp" );
nbrLines = N Rows( WaferMap );
nbrCols = N Cols( WaferMap );
Report( Biv )[Framebox( 1 )] << add graphics script(
For( n = 1, n <= nbrLines, n++,
Pen Size( WaferMap:Ythick[n] );
H Line( WaferMap:Xmin[n], WaferMap:Xmax[n], WaferMap:Y[n] );
)
);
Report( Biv )[Framebox( 1 )] << add graphics script(
For( n = 1, n <= nbrLines, n++,
Pen Size( WaferMap:Xthick[n] );
V Line( WaferMap:X[n], WaferMap:Ymin[n], WaferMap:Ymax[n] );
)
);
Report( Biv )[Framebox( 1 )] << add graphics script(
x1 = (Col Min( WaferMap:X ) + Col Max( WaferMap:X )) / 2;
y1 = (Col Min( WaferMap:Y ) + Col Max( WaferMap:Y )) / 2;
{r1, r2} = Report( Biv )[Framebox( 1 )] << Get Size();
radius = (r1 + r2) / 24
; Biv << reshow;
//Path( [0 65 1, -11 33 0, 0 0 0, 15 0 0, 25 0 0, 26 33 0, 10 0 -3], 0 );
//Path( [0 65 1, -11 33 0, 10 40 0, 8 0 0, 26 33 0, 10 0 -3], 0 );
Circle( {x1, y1}, radius/* no fill for concentric circles */ );
);
Report( Biv )[Picture Box( 1 )] << Save Picture( "ShotMap" || "_.emf", EMF );
Report( Biv )[Picture Box( 1 )] << Save Picture( "ShotMap" || "_.png", PNG );
Report( Biv )[Picture Box( 1 )] << Save Picture( "ShotMap" || "_.JPEG", JPEG );
//close(WaferMap, nosave);Werfen Sie einen Blick auf die Anmerkungsfunktion des Halbleiter-Toolkits. Halbleiter-Toolkit
Wenn es nicht das tut, was Sie brauchen, fügen Sie einen Kommentar zum Toolkit-Thread hinzu und wir können sehen, was fehlt.
Am besten,
M