<div dir="ltr">Hi,<div><br></div><div>Could you please help me to generate Oblique MPR. I can able to generate Orthogonal MPR using the below code.My requirement is based on the angle seletion I need to generate sagittal and coronal images,</div><div><br></div><div><div><br></div><div><span class="gmail-Apple-tab-span" style="white-space:pre">                       </span>dicomImageReader.SetDirectoryName ( dicomImagePath );</div><div><span class="gmail-Apple-tab-span" style="white-space:pre">                  </span>dicomImageReader.Update ();</div><div><span class="gmail-Apple-tab-span" style="white-space:pre">                    </span>xyminmax = dicomImageReader.GetOutput ().GetExtent ();</div><div><span class="gmail-Apple-tab-span" style="white-space:pre">                 </span>xMin = xyminmax[0];</div><div><span class="gmail-Apple-tab-span" style="white-space:pre">                    </span>xMax = xyminmax[1];</div><div><span class="gmail-Apple-tab-span" style="white-space:pre">                    </span>yMin = xyminmax[2];</div><div><span class="gmail-Apple-tab-span" style="white-space:pre">                    </span>yMax = xyminmax[3];</div><div><span class="gmail-Apple-tab-span" style="white-space:pre">                    </span>zMin = xyminmax[4];</div><div><span class="gmail-Apple-tab-span" style="white-space:pre">                    </span>zMax = xyminmax[5];</div><div><br></div><div><span class="gmail-Apple-tab-span" style="white-space:pre">                   </span>spacing = dicomImageReader.GetOutput ().GetSpacing ();</div><div><span class="gmail-Apple-tab-span" style="white-space:pre">                 </span>sx = spacing[0];</div><div><span class="gmail-Apple-tab-span" style="white-space:pre">                       </span>sy = spacing[1];</div><div><span class="gmail-Apple-tab-span" style="white-space:pre">                       </span>sz = spacing[2];</div><div><br></div><div><span class="gmail-Apple-tab-span" style="white-space:pre">                      </span>origin = dicomImageReader.GetOutput ().GetOrigin ();</div><div><span class="gmail-Apple-tab-span" style="white-space:pre">                   </span>ox = origin[0];</div><div><span class="gmail-Apple-tab-span" style="white-space:pre">                        </span>oy = origin[1];</div><div><span class="gmail-Apple-tab-span" style="white-space:pre">                        </span>oz = origin[2];</div><div><span class="gmail-Apple-tab-span" style="white-space:pre">                        </span></div><div><span class="gmail-Apple-tab-span" style="white-space:pre">                       </span>//Display mpr image</div><div><span class="gmail-Apple-tab-span" style="white-space:pre">                    </span>double cx = (ox + (0.5 * (xMax - xMin)) * sx);</div><div><span class="gmail-Apple-tab-span" style="white-space:pre">                 </span>double cy = (oy + (0.5 * (yMax - yMin)) * sy);</div><div><span class="gmail-Apple-tab-span" style="white-space:pre">                 </span>double cz = (oy + (0.5 * (zMax - zMin)) * sz);</div><div><br></div><div><span class="gmail-Apple-tab-span" style="white-space:pre">                        </span>double[] axialElements = { 1, 0, 0, cx, 0, 1, 0, cy, 0, 0, 1, cz, 0, 0, 0, 1 };</div><div><span class="gmail-Apple-tab-span" style="white-space:pre">                        </span>double[] coronalElements = { 1, 0, 0, cx, 0, 0, 1, cy, 0, -1, 0, cz, 0, 0, 0, 1 };</div><div><span class="gmail-Apple-tab-span" style="white-space:pre">                     </span>double[] sagittalElements = { 0, 0, -1, cx, -1, 0, 0, cy, 0, -1, 0, cz, 0, 0, 0, 1 };</div><div><br></div><div><span class="gmail-Apple-tab-span" style="white-space:pre">                 </span>// For display the Axial Slice...</div><div><span class="gmail-Apple-tab-span" style="white-space:pre">                      </span>// Set the slice orientation...</div><div><span class="gmail-Apple-tab-span" style="white-space:pre">                        </span>vtkMatrix4x4 axialResliceAxes = new vtkMatrix4x4();</div><div><span class="gmail-Apple-tab-span" style="white-space:pre">                    </span>axialResliceAxes.DeepCopy(axialElements);</div><div><br></div><div><span class="gmail-Apple-tab-span" style="white-space:pre">                     </span>// Extract a slice in the desired orientation...</div><div><span class="gmail-Apple-tab-span" style="white-space:pre">                       </span>axialReslice = new vtkImageReslice();</div><div><span class="gmail-Apple-tab-span" style="white-space:pre">                  </span>//axialReslice.SetSlabNumberOfSlices ( 1 );</div><div><span class="gmail-Apple-tab-span" style="white-space:pre">                    </span>axialReslice.SetInputConnection(dicomImageReader.GetOutputPort());</div><div><span class="gmail-Apple-tab-span" style="white-space:pre">                     </span>axialReslice.SetOutputDimensionality(2);</div><div><span class="gmail-Apple-tab-span" style="white-space:pre">                       </span>axialReslice.SetResliceAxes(axialResliceAxes);</div><div><span class="gmail-Apple-tab-span" style="white-space:pre">                 </span>axialReslice.SetInterpolationModeToLinear();</div><div><span class="gmail-Apple-tab-span" style="white-space:pre">                   </span>axialReslice.SetResliceAxes(axialResliceAxes);</div><div><br></div><div><span class="gmail-Apple-tab-span" style="white-space:pre">                        </span>// For display the Coronal Slice...</div><div><span class="gmail-Apple-tab-span" style="white-space:pre">                    </span>// Set the slice orientation...</div><div><span class="gmail-Apple-tab-span" style="white-space:pre">                        </span>vtkMatrix4x4 coronalResliceAxes = new vtkMatrix4x4();</div><div><span class="gmail-Apple-tab-span" style="white-space:pre">                  </span>coronalResliceAxes.DeepCopy(coronalElements);</div><div><br></div><div><span class="gmail-Apple-tab-span" style="white-space:pre">                 </span>// Extract a slice in the desired orientation...</div><div><span class="gmail-Apple-tab-span" style="white-space:pre">                       </span>coronalReslice = new vtkImageReslice();</div><div><span class="gmail-Apple-tab-span" style="white-space:pre">                        </span>coronalReslice.SetInputConnection(dicomImageReader.GetOutputPort());</div><div><span class="gmail-Apple-tab-span" style="white-space:pre">                   </span>coronalReslice.SetOutputDimensionality(2);</div><div><span class="gmail-Apple-tab-span" style="white-space:pre">                     </span>coronalReslice.SetResliceAxes(coronalResliceAxes);</div><div><span class="gmail-Apple-tab-span" style="white-space:pre">                     </span>coronalReslice.SetInterpolationModeToLinear();</div><div><span class="gmail-Apple-tab-span" style="white-space:pre">                 </span>coronalReslice.SetResliceAxes(coronalResliceAxes);</div><div><br></div><div><span class="gmail-Apple-tab-span" style="white-space:pre">                    </span>// For display the Sagittal Slice...</div><div><span class="gmail-Apple-tab-span" style="white-space:pre">                   </span>// Set the slice orientation...</div><div><span class="gmail-Apple-tab-span" style="white-space:pre">                        </span>vtkMatrix4x4 sagittalResliceAxes = new vtkMatrix4x4();</div><div><span class="gmail-Apple-tab-span" style="white-space:pre">                 </span>sagittalResliceAxes.DeepCopy(sagittalElements);</div><div><br></div><div><span class="gmail-Apple-tab-span" style="white-space:pre">                       </span>// Extract a slice in the desired orientation</div><div><span class="gmail-Apple-tab-span" style="white-space:pre">                  </span>sagittalReslice = new vtkImageReslice();</div><div><span class="gmail-Apple-tab-span" style="white-space:pre">                       </span>sagittalReslice.SetInputConnection(dicomImageReader.GetOutputPort());</div><div><span class="gmail-Apple-tab-span" style="white-space:pre">                  </span>sagittalReslice.SetOutputDimensionality(2);</div><div><span class="gmail-Apple-tab-span" style="white-space:pre">                    </span>sagittalReslice.SetResliceAxes(sagittalResliceAxes);</div><div><span class="gmail-Apple-tab-span" style="white-space:pre">                   </span>sagittalReslice.SetInterpolationModeToLinear();</div><div><span class="gmail-Apple-tab-span" style="white-space:pre">                        </span>sagittalReslice.SetResliceAxes(sagittalResliceAxes);</div><div><span class="gmail-Apple-tab-span" style="white-space:pre">                   </span>dicomImageReader.Delete ();</div><div><br></div><div>Thanks,</div><div>Pandiyan</div><div><br></div><div><br></div></div></div>