Take the 2-minute tour ×
Mathematica Stack Exchange is a question and answer site for users of Mathematica. It's 100% free, no registration required.

I am developping a perspective camera simulator. For the moment, I am considering only the projection of a quadrics form that gives us a conic. For testing my simulator, I use povray an image rendering software to generate a 2D image for a quadric. My problem is how to plot my resulat in a different standard dimensions (like 800*600, 1080*1920,320*240,…..). Here is a portion of my code.

Conic={{7.08617*10^-6,4.20705*10^-14,-0.00283447},   {4.20705*10^-14,8.77616*10^-7,-0.000219319},{-0.00283447,-0.000219319,1.18635}}
ell=Plot[Evaluate[
y /. Solve[{x, 600 - y, 1}.Conic.{x, 600 - y, 1} == 0, y]], {x, 0, 
800}, PlotRange -> {0, 600}, AspectRatio -> 6/8, 
Filling -> {1 -> {{2}, RGBColor[{1, 1, 1}]}}, Axes -> False, 
Background -> Black, PlotStyle -> {Directive[RGBColor[{1, 0, 1}]]}]
(*Here I plot my conic (ellipse) in (800,600) and for {600-y}, I do this because the   coordinate system between image and graphics are inversed… Then to convert my graphic to image, I use Rasterize() and I tested succefully my result *)
 Rasterize[ell,ImageSize -> {400, 300}, Background -> RGBColor[{0, 1, 0}]]

(I need to simulate my camera with image dimensions 320 x 240 ) I changed my code like this

ell=Plot[Evaluate[
y /. Solve[{x, 240 - y, 1}.Conic.{x, 240 - y, 1} == 0, y]], {x, 0, 
320}, PlotRange -> {0, 240}, AspectRatio -> 3/4, 
Filling -> {1 -> {{2}, RGBColor[{1, 1, 1}]}}, Axes -> False, 
Background -> Black, PlotStyle -> {Directive[RGBColor[{1, 0, 1}]]}]

Here I have not get the ellipse. It seems that there is not a point that satify {x, 240 - y, 1}.Conic.{x, 240 - y, 1}. But it is not logic because when I use the camera on povray, I can render this image. Any clarification please

share|improve this question
    
I think that it is a difficult issue! –  phdstudent Oct 26 '13 at 3:16
add comment

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Browse other questions tagged or ask your own question.