Wie man ein Volumen mit nicht-kubischen Voxeln korrekt in mayavi anzeigt

8

Ich verwende mayavi (3.3.2), um Volumen-Isoflächen anzuzeigen.

Im Allgemeinen haben meine Volumes keine kubischen Voxel; Beispielsweise könnte das Abtastgitter 1 mm x 1 mm in X und Y, aber 1,4 mm in Z-Richtung betragen.

Wie kann ich solche Volumina mit den richtigen räumlichen Proportionen anzeigen lassen, indem Sie die mlab.contour3d oder mlab.pipeline.iso_surface von mayavi verwenden? Ich würde es wirklich vorziehen, die Volumen nicht zu einem Kubikraster neu zu bemustern.

Eine weitere Möglichkeit, das Problem zu beschreiben: Was kann ich tun, um den unten stehenden Code zur Anzeige einer Kugel anstelle eines abgeflachten Elipsoids zu erhalten (wobei die volume mit ihren beabsichtigten 1: 1: 2-Seitenverhältnisvoxeln als gegeben betrachtet wird, und ohne das Volume neu zu generieren oder neu zu laden.

%Vor%

Ich vermute, dass es eine Möglichkeit geben sollte, die darunter liegende VTK-Grafikpipeline (ihre Transformationen usw.) zu bekommen und die entsprechende anisotrope Skalierung einzufügen (wenn es keine Möglichkeit gibt, dies direkter über die mlab-API zu tun) .

    
timday 20.05.2011, 19:39
quelle

1 Antwort

7

Dafür ist es am einfachsten, explizit ein Objekt scalar_field aus den Eingabedaten zu erstellen.

Tatsächlich mache ich das ziemlich häufig, da wir gerne in der Geologie (wo positiv ist, nach unten) etwas vertiefen. Das bedeutet, dass Sie ein negatives Inkrement in der z-Richtung benötigen. Es wäre schön, wenn es nur ein Argument für die verschiedenen mlab-Funktionen wäre, aber es ist immer noch nicht zu schwer zu tun.

%Vor%

    
Joe Kington 24.05.2011, 04:00
quelle

Tags und Links