POV-Ray : Newsgroups : povray.binaries.images : Biohazard Symbol : Biohazard Symbol Server Time
25 Apr 2024 09:15:54 EDT (-0400)
  Biohazard Symbol  
From: Dave Blandston
Date: 3 May 2018 23:30:00
Message: <web.5aebd29271205310cfd0510a0@news.povray.org>
Hello,

This is a simple object but I'll share it in case anyone finds it useful or
interesting (as always).

Regards,
Dave Blandston

* * * * * * * * * *

#version 3.7;

global_settings {assumed_gamma 2.2}

camera {
   orthographic
   location <0, 0, -120>
   direction <0, 0, 1>
   look_at <0, 0, 0>
} //camera

#macro MakeBiohazardSymbol (Border)

   //Makes a biohazard symbol 1 unit thick (along the z axis) with the front at
z = -1 and the back at z = 0.

   #local R1 = 30;
   #local R2 = 21;
   #local R3 = 6;
   #local R4 = 27;
   #local R5 = 20;
   #local R6 = R2 - 2;

   #local Part0 = object {
      difference {
         cylinder {<0, 0, -1> <0, 0, 0>, R1 - Border}
         box {<-4 - Border, 8, -1.1> <4 + Border, 30.1, .1>}
      } //difference
      translate 22 * y
   } //object

   #local Part1 = object {
      intersection {
         difference {
            cylinder {<0, 0, -1> <0, 0, 0>, R4 - Border translate -22 * y}
            cylinder {<0, 0, -1.1> <0, 0, .1>, R5 + Border translate -22 * y}
         } //difference
         cylinder {<0, 0, -1.1> <0, 0, .1>, R6 - Border translate 8 * y}
      } //intersection
      translate 22 * y
   } //object

   #declare BiohazardSymbol = object {
      union {
         difference {
            union {
               object {Part0}
               object {Part0 rotate -120 * z}
               object {Part0 rotate 120 * z}
            } //union
            cylinder {<0, 0, -1.1> <0, 0, .1>, R2 + Border translate 30 * y}
            cylinder {<0, 0, -1.1> <0, 0, .1>, R2 + Border translate 30 * y
rotate -120 * z}
            cylinder {<0, 0, -1.1> <0, 0, .1>, R2 + Border translate 30 * y
rotate 120 * z}
            cylinder {<0, 0, -1.1> <0, 0, .1>, R3 + Border}
            box {<-1 - Border, 0, -1.1> <1 + Border, 10, .1>}
            box {<-1 - Border, 0, -1.1> <1 + Border, 10, .1> rotate -120 * z}
            box {<-1 - Border, 0, -1.1> <1 + Border, 10, .1> rotate 120 * z}
         } //difference
         object {Part1}
         object {Part1 rotate -120 * z}
         object {Part1 rotate 120 * z}
      } //union
   } //object

#end //#macro MakeBiohazardSymbol

MakeBiohazardSymbol (0)
object {BiohazardSymbol texture {pigment {color <240, 75, 0> / 255} finish
{emission 1}}}

MakeBiohazardSymbol (.5)
object {BiohazardSymbol texture {pigment {color <204, 255, 0> / 255} finish
{emission 1}} translate -.0001 * z}


Post a reply to this message


Attachments:
Download 'biohazardsymbol.png' (37 KB)

Preview of image 'biohazardsymbol.png'
biohazardsymbol.png


 

Copyright 2003-2023 Persistence of Vision Raytracer Pty. Ltd.