File:Left-handed coordinate system (z to back) whirl.png

Uploaded by Watchduck
Upload date 2021-11-13T20:26:57Z
MIME type image/png
Dimensions 3000 × 3000 px
File size 566.3 KB

Summary

Description

left-handed coordinate system

Image set Handedness of coordinate systems; RGB Povray

3D coordinate systems can have two different orientations.
The circular arrows indicate positive rotation.

left right
 This image was created with POV-Ray.
Date
Source Own work
Author Watchduck

Licensing

I, the copyright holder of this work, hereby publish it under the following license:
w:en:Creative Commons
attribution share alike
This file is licensed under the Creative Commons Attribution-Share Alike 4.0 International license.
You are free:
  • to share – to copy, distribute and transmit the work
  • to remix – to adapt the work
Under the following conditions:
  • attribution – You must give appropriate credit, provide a link to the license, and indicate if changes were made. You may do so in any reasonable manner, but not in any way that suggests the licensor endorses you or your use.
  • share alike – If you remix, transform, or build upon the material, you must distribute your contributions under the same or compatible license as the original.

POV-Ray source

#version 3.6;
global_settings { assumed_gamma 1.0 } 
#default{ finish{ ambient 0.1 diffuse 0.9 conserve_energy}}

#include "colors.inc"


////////////////////// camera and light

#declare Camera_Position = <3  3, -12>;                                                           
#declare Camera_Look_At = <0.3, 0.3, 0.3> ;
#declare Camera_Angle = 42.5 ;

camera{ 
  location Camera_Position
  right    x*image_width/image_height
  angle    Camera_Angle
  look_at  Camera_Look_At
}

light_source{<1200,2500,-2000> color White*0.9 shadowless}
light_source{ Camera_Position  color rgb<0.9,0.9,1>*0.1 shadowless}

sky_sphere{ pigment{ White } }



////////////////////// axes

#declare AxisLen = 4;

#macro Axis_(AxisLen, Texture1, Texture2)
  union{
    cylinder { <0,-AxisLen,0>, <0,AxisLen,0>, 0.05
      texture{checker texture{Texture1}
        texture{Texture2}
        translate<0.1, 0, 0.1>
      }
    }
    cone{<0,AxisLen,0>,0.2,<0,AxisLen+0.7,0>,0
    texture{Texture1}
    }
  }
#end

#macro Texture(AxisNum, Transparency)
    #local Colors = array[3] {
        pigment{ color rgbt<1, 0, 0, Transparency> },
        pigment{ color rgbt<0, 0.35, 0, Transparency> },
        pigment{ color rgbt<0, 0, 1, Transparency> }
    };
    #local Color = Colors[AxisNum];
    texture { Color finish{phong 1} }
#end


#declare TextureLight = texture {
  pigment{ color White }
  finish { phong 1}
}

#declare Axes = union{
  object { 
    Axis_(AxisLen, Texture(0, 0), TextureLight)
    rotate< 0,0,-90>
  }
  object {
    Axis_(AxisLen, Texture(1, 0), TextureLight)
  }
  object {
    Axis_(AxisLen, Texture(2, 0), TextureLight)
    rotate<90,0,  0>
  }
}


////////////////////// indicators of direction of rotation

#declare RawRotationIndicator = difference{
    merge{
        #for (Value, 0, .96, .001)
            sphere{
                3.8*x,                 // default place
                .16 - Value*.16        // decreasing radius
                rotate Value * 90 * z  // rotation
            }
        #end
    }
    plane{ y, 0  rotate 20*z }
    rotate -8.5*z
}
#declare Transparency = .8;
#declare RotationIndicatorsBlue = union{
    object{ RawRotationIndicator  Texture(2, 0) }
    object{ RawRotationIndicator  Texture(2, Transparency)  rotate 90*z }
    object{ RawRotationIndicator  Texture(2, Transparency)  rotate 180*z }
    object{ RawRotationIndicator  Texture(2, Transparency)  rotate 270*z }
}
#declare RotationIndicatorsGreen = union{
    object{ RawRotationIndicator  Texture(1, 0) }
    object{ RawRotationIndicator  Texture(1, Transparency)  rotate 90*z }
    object{ RawRotationIndicator  Texture(1, Transparency)  rotate 180*z }
    object{ RawRotationIndicator  Texture(1, Transparency)  rotate 270*z }
    rotate -90*x  rotate -90*y
}
#declare RotationIndicatorsRed = union{
    object{ RawRotationIndicator  Texture(0, 0) }
    object{ RawRotationIndicator  Texture(0, Transparency)  rotate 90*z }
    object{ RawRotationIndicator  Texture(0, Transparency)  rotate 180*z }
    object{ RawRotationIndicator  Texture(0, Transparency)  rotate 270*z }
    rotate 90*y  rotate 90*x
}
#declare RotationIndicators = union{
    object{RotationIndicatorsBlue}
    object{RotationIndicatorsGreen}
    object{RotationIndicatorsRed}
}


////////////////////// put objects

union{
    object{Axes}
    object{RotationIndicators}
}

Captions

Add a one-line explanation of what this file represents

Items portrayed in this file

depicts

13 November 2021

579,922 byte

3,000 pixel

3,000 pixel

image/png

37e05bf7318779d9e7f15d62771d16b2970721c2