4

Suppose I render a simple eyeball:

AnatomyPlot3D[Entity["AnatomicalStructure", "RightEyeball"]]

Anatomy plot of eyeball

but want to cut it in half using ClipPlanes, for instance to eliminate the left half of the eyeball.

By what principled method do I know how to specify the plane? I tried the obvious

ClipPlanes -> {1,0,0,0}

and

{{0,0,0},{0,1,0},{0,0,1}}

without success.

J. M.'s missing motivation
  • 124,525
  • 11
  • 401
  • 574
David G. Stork
  • 41,180
  • 3
  • 34
  • 96

1 Answers1

4

Of course ClipPlanes works here. The problem is that you had mistakenly assumed the PlotRange:

eyeball = AnatomyPlot3D[Entity["AnatomicalStructure", "RightEyeball"]];

pr = PlotRange[eyeball]
   {{-43.6181, -17.298}, {-166.051, -138.829}, {1504.96, 1531.19}}

Thus,

Show[eyeball, 
     ClipPlanes -> InfinitePlane[Mean[Transpose[pr]], {1, -1} IdentityMatrix[3][[{2, 3}]]]]

eyeball cross-section

J. M.'s missing motivation
  • 124,525
  • 11
  • 401
  • 574