POV-Ray : Newsgroups : povray.binaries.images : Warehouse WIP Server Time
7 Nov 2024 09:27:23 EST (-0500)
  Warehouse WIP (Message 1 to 10 of 13)  
Goto Latest 10 Messages Next 3 Messages >>>
From: Bald Eagle
Subject: Warehouse WIP
Date: 14 Jun 2016 18:00:02
Message: <web.57607d9956afa80c5e7df57c0@news.povray.org>
Just something I'm paying with to keep the 3D modeling / coding / math skills a
little less rusty.

My lighting and textures are the usual WIP crap  ;)  The boxes seem ok - but
need a lot more variation. Same with the pallets.

A macro takes each pallet and randomly loads it with 0 - 4 levels of boxes, with
the top layer randomly filled.

I want to randomly rotate the pallets, vary the construction & texture, vary the
box sizes and texture, randomly twist and offset everything, and get some more
pallets loaded up onto the racks.

I'm thinking about how to write a macro to shrink-wrap a loaded pallet - not
sure how I'll do the crinkly plastic film...


Post a reply to this message


Attachments:
Download 'cec.png' (1153 KB)

Preview of image 'cec.png'
cec.png


 

From: Bald Eagle
Subject: Re: Warehouse WIP
Date: 14 Jun 2016 18:05:02
Message: <web.57607ed22bcb87f35e7df57c0@news.povray.org>
The genuine article:


Post a reply to this message


Attachments:
Download '20160609_100140.jpg' (2529 KB)

Preview of image '20160609_100140.jpg'
20160609_100140.jpg


 

From: Jaime Vives Piqueres
Subject: Re: Warehouse WIP
Date: 15 Jun 2016 03:41:06
Message: <57610692$1@news.povray.org>

>
> Just something I'm paying with to keep the 3D modeling / coding /
> math skills a little less rusty.
>
> My lighting and textures are the usual WIP crap  ;)  The boxes seem
> ok - but need a lot more variation. Same with the pallets.
>
> A macro takes each pallet and randomly loads it with 0 - 4 levels of
> boxes, with the top layer randomly filled.
>
> I want to randomly rotate the pallets, vary the construction &
> texture, vary the box sizes and texture, randomly twist and offset
> everything, and get some more pallets loaded up onto the racks.

   Looks promising... the random pallet filler macro works very well. I
should have done something like that when I did a similar scene, but
opted for the "sold out" idea to keep the warehouse empty. :)


> I'm thinking about how to write a macro to shrink-wrap a loaded
> pallet - not sure how I'll do the crinkly plastic film...
>

   Hmmm... that sounds very ambitious to me. It's not going to be easy.

--
jaime


Post a reply to this message

From: gibe
Subject: Re: Warehouse WIP
Date: 15 Jun 2016 04:35:01
Message: <web.576113002bcb87f3dd55b1240@news.povray.org>
"Bald Eagle" <cre### [at] netscapenet> wrote:
> Just something I'm paying with to keep the 3D modeling / coding / math skills a
> little less rusty.
>
> My lighting and textures are the usual WIP crap  ;)  The boxes seem ok - but
> need a lot more variation. Same with the pallets.
>
> A macro takes each pallet and randomly loads it with 0 - 4 levels of boxes, with
> the top layer randomly filled.
>
> I want to randomly rotate the pallets, vary the construction & texture, vary the
> box sizes and texture, randomly twist and offset everything, and get some more
> pallets loaded up onto the racks.
>
> I'm thinking about how to write a macro to shrink-wrap a loaded pallet - not
> sure how I'll do the crinkly plastic film...

Well... I like the scene!
Please don't rotate too much the pallets, because the workers of the warehouses
are mostly ordinate people (ok, perhaps not in your photography...).
The light is very pleasant, more pleasant than in ordinary warehouses.
You can add even yellow tape on the floor to mark the spaces

Paolo


Post a reply to this message

From: Bald Eagle
Subject: Re: Warehouse WIP
Date: 15 Jun 2016 20:45:06
Message: <web.5761f5a42bcb87f35e7df57c0@news.povray.org>
Jaime - thanks, it's something that I'm sure will develop over time, and help me
learn more about the many aspects of good POV-Ray scene composition.

I had the idea of using an isosurface to model the stacked boxes, and then
blobbing them together, as demonstrated in the docs,

but a real cube aligned to the axes is more difficult than it appears, and then
there's the issue of stacking different sized boxes...

So then I figured that Friedrich's Wire_Box would be easily adapted to wrapping
[sic] in a blob{ } statement, ... and then I could just uv-map it with a
shrinkwrap graphic.

I need to figure out how exactly to build a stack of boxes in the 3 nested loops
(X, Z, Y) inside a blob statement...   :O

REALLY rough stab at stacking 2 boxes attached.   I need to undergo some blob
reeducation to get a good "wrap" look.  I think that maybe if I do the graphic
correctly and add an alpha channel, it might not look half bad...

Paolo - thanks for the kind words.
The pallets are generally fairly orderly, except for mid-"project".
This is the "clean" look.  You can't imagine when it's "full" and "chaotic"  ;)
> The light is very pleasant, more pleasant than in ordinary warehouses.
The light is actually just a grid of point lights.  Can't get any more basic
than that.   The area light I tried was way too soft and flat.
Maybe after I add windows and some strong sun, it will be better.
And dust.  Lots and lots of dust.

> You can add even yellow tape on the floor to mark the spaces
Yes, maybe in real life too  :D


Post a reply to this message


Attachments:
Download 'blob box test.png' (87 KB)

Preview of image 'blob box test.png'
blob box test.png


 

From: Bald Eagle
Subject: Re: Warehouse WIP
Date: 15 Jun 2016 21:20:03
Message: <web.5761fe372bcb87f35e7df57c0@news.povray.org>
Playing some more with it, and just gonna put these thoughts here, since I'll be
out of town for a week.

Need to make a tilable shrink-wrap graphic.

Adding connecting cylinders from the top corners of the bottom box to the bottom
corners of the top box fills in the corners (<Alan Rickman> OB....viously <Alan
Rickman>)
So the thing to do might be to trace a curve with a "sphere-sweep" loop or a
sphere-and-cylinder-sweep inside the blob { } statement to give one of those
minimal-surface soap bubble things.

Possibly just rewrite the stacking macro to make a separate shrink-wrap object,
and tracing up the sides of all the boxes, and filling in with curves - there
will need to be some logic in there.

My original idea was to somehow use trace{ }, and possibly generate a mesh.
I'll have to look make at some of the "mesh maker" things people have made in
the past.

Ok.  The best to all.  Good night.  I'm out on the road tomorrow.


Post a reply to this message

From: Alain
Subject: Re: Warehouse WIP
Date: 15 Jun 2016 23:40:45
Message: <57621fbd@news.povray.org>

>
> Just something I'm paying with to keep the 3D modeling / coding / math skills a
> little less rusty.
>
> My lighting and textures are the usual WIP crap  ;)  The boxes seem ok - but
> need a lot more variation. Same with the pallets.
>
> A macro takes each pallet and randomly loads it with 0 - 4 levels of boxes, with
> the top layer randomly filled.

How about stacked full pallets? Up to 3 is relatively common when you 
have a fork lift. I've seen some cases with as much as 5 full pallets 
high. Most of the time, they don't go higher than 4.

Also, you may want to have stacks of empty pallets. Those may go over 10 
high.

>
> I want to randomly rotate the pallets, vary the construction & texture, vary the
> box sizes and texture, randomly twist and offset everything, and get some more
> pallets loaded up onto the racks.

Be light on the random rotation of the pallets. Something like rotate 
(rand(R)-rand(R))*2*y should be enough in most cases.
You may go as high as 4 for the smallest pallets, but larger need lower 
values.
Same for shifting and twisting the boxes. When you load a pallet, you 
always try to place the boxes as regularly as possible.
That said, it's not rare to see skewed pallets where the angles are not 
as right as they should.

As for the wood of the pallets, it's often very rough, using cheap 
"utility" grade wood. Very rough, unfinished, unplanned, knotty and 
often split, with some bark left... It's also almost always light 
coloured: white pine, light yellow pine, light oak,...

>
> I'm thinking about how to write a macro to shrink-wrap a loaded pallet - not
> sure how I'll do the crinkly plastic film...
>
Good luck on that one.


Post a reply to this message

From: Bald Eagle
Subject: Re: Warehouse WIP
Date: 18 Jun 2016 17:20:00
Message: <web.5765ba212bcb87f380403a200@news.povray.org>
Alain <kua### [at] videotronca> wrote:

> As for the wood of the pallets, it's often very rough, using cheap
> "utility" grade wood. Very rough, unfinished, unplanned, knotty and
> often split, with some bark left... It's also almost always light
> coloured: white pine, light yellow pine, light oak,...

rendering a good, convincing wood texture is always a challenge, and I can only
imagine how to get a good cracked and split wood plank.

I found a pretty amazing carboard box development HERE:
https://www.verdoorn.nl/tiki-index.php?page=CBCKManual

Really great and extensive work on a simple object.

> > I'm thinking about how to write a macro to shrink-wrap a loaded pallet - not
> > sure how I'll do the crinkly plastic film...
> >
> Good luck on that one.

Thanks - I'm working on it - slowly   ;)


Post a reply to this message

From: Stephen
Subject: Re: Warehouse WIP
Date: 18 Jun 2016 18:47:57
Message: <5765cf9d$1@news.povray.org>
On 6/18/2016 10:16 PM, Bald Eagle wrote:
> I found a pretty amazing carboard box development HERE:
> https://www.verdoorn.nl/tiki-index.php?page=CBCKManual
>
> Really great and extensive work on a simple object.

Impressive!

-- 

Regards
     Stephen


Post a reply to this message

From: Anthony D  Baye
Subject: Re: Warehouse WIP
Date: 19 Jun 2016 13:05:01
Message: <web.5766d0952bcb87f3fd6b6fe10@news.povray.org>
"Bald Eagle" <cre### [at] netscapenet> wrote:
> Alain <kua### [at] videotronca> wrote:
>
> > As for the wood of the pallets, it's often very rough, using cheap
> > "utility" grade wood. Very rough, unfinished, unplanned, knotty and
> > often split, with some bark left... It's also almost always light
> > coloured: white pine, light yellow pine, light oak,...
>
> rendering a good, convincing wood texture is always a challenge, and I can only
> imagine how to get a good cracked and split wood plank.
>
> I found a pretty amazing carboard box development HERE:
> https://www.verdoorn.nl/tiki-index.php?page=CBCKManual
>
> Really great and extensive work on a simple object.
>
> > > I'm thinking about how to write a macro to shrink-wrap a loaded pallet - not
> > > sure how I'll do the crinkly plastic film...
> > >
> > Good luck on that one.
>
> Thanks - I'm working on it - slowly   ;)

do you, perhaps, want to use my packing crate model?

You're welcome to it, though it might take some scaling.

Regards,
A.D.B.

#include "rand.inc"
#include "woods.inc"
#include "functions.inc"
#declare P_OldWood =
pigment {
     wood
     turbulence <0.3, 0.1, 0.5>
     color_map { M_Wood1A }
             scale <0.125*ft, 1.0, 1.0*ft>
     }
#declare F_OldWood =
function {
        pattern {
                wood
                turbulence <0.3, 0.1, 0.5>
                scale <0.125*ft, 1.0, 1.0*ft>
                }
        }

#macro Board(W, T, L)
#local grain_seed = 15643544181;
#local _X = Rand_Normal(0.0, 1.0, RdmA)*2e5;
#local _Y = Rand_Normal(0.0, 1.0, RdmB)*2e5;
#local _Z = Rand_Normal(0.0, 1.0, RdmC)*2e5;
/*
#debug concat("_X: " str(_X, 0, 6) "\n")
#debug concat("_Y: " str(_Y, 0, 6) "\n")
#debug concat("_Z: " str(_Z, 0, 6) "\n")
*/
isosurface {
        function {
             f_rounded_box(x,y,z,0.125,
                  W/2-0.03125*F_OldWood(x-_X,y-_Y,z-_Z),
                  T/2-0.078125*F_OldWood(x-_X,y-_Y,z-_Z),
                  L/2+0.25)
             }
        threshold 0
        max_gradient 2
        contained_by { box { <-W/2, -T/2, -L/2> <W/2, T/2, L/2> } }
        all_intersections
          pigment { P_OldWood translate <_X,_Y,_Z> }
                finish { ambient 0 diffuse 0.38 specular 0.07 roughness 0.3 }
        }
#end

#declare Pallet =
union {
    union {
         object { Board(4, 2, 63) rotate 90.0*z translate <-30.5, 2.75, 0.0> }
         object { Board(4, 2, 63) rotate 90.0*z translate <-3.0, 2.75, 0.0> }
         object { Board(4, 2, 63) rotate 90.0*z translate <3.0, 2.75, 0.0> }
         object { Board(4, 2, 63) rotate 90.0*z translate <30.5, 2.75, 0.0> }
         }
#local sT = -2.4375 ;
#while(sT <= 2.4375)
    object { Board(4.5, 0.75, 63) rotate 90.0*y translate <0.0, 0.375, sT*ft> }
    object { Board(4.5, 0.75, 63) rotate 90.0*y translate <0.0, 5.125, sT*ft> }
#local sT = sT + 0.4875 ;
#end
    }

#declare crossMember =
difference {
     object { Board(6, 2.0, sqrt(4608)) }
     box { <-3.1, 0.0, -3.0> <3.1, 1.125, 3.0> }
     }

#declare EndCap =
union {
#local a = 0;
#while(a < 360)
    object { Board(6, 2.0, 54.0) rotate 90.0*y translate <-3.0, 0.0, 27.0>
        rotate a*y }
#local a = a + 90;
#end
#local b = -26.0;
#while(b <= 26.0)
    object { Board(4, 2, 56) translate <b, 2.0, 0.0> }
#local b = b + 4.0;
#end
    intersection {
        union {
            object { crossMember rotate -45.0*y }
            object { crossMember rotate <180.0, 45.0, 0.0> }
            }
        box { <-24.0, -1.0, -24.0> <24.0, 1.0, 24.0> }
        }
    }

#declare SidePlate =
union {
#local a = 0;
#while(a < 360)
    object { Board(6, 2.0, 52.0) rotate 90.0*y translate <-3.0, 0.0, 26.0>
        rotate a*y }
#local a = a + 90;
#end
#local b = -24.0;
#while(b <= 24.0)
    object { Board(6, 2, 54) translate <b, 2.0, 0.0> }translated and rotated.
remove rotation and drop 1.0*y to close.
#local b = b + 6.0;
#end
    intersection {
        union {
            object { crossMember rotate -45.0*y }
            object { crossMember rotate <180.0, 45.0, 0.0> }
            }
        box { <-23.0, -1.0, -23.0> <23.0, 1.0, 23.0> }
        }
    }

// The actual crate, on a pallet
#declare Pallet_Crate =
union {
    object { Pallet }
    union {
        object { EndCap translate 1.0*y }
        // Top closed.
        object { EndCap rotate <0.0, 0.0, 180.0> translate <0.0, 61.0, 0.0> }
    #local a = 0;
    #while(a < 360)
        object { SidePlate rotate <90.0, -90.0, 0.0>
             translate <29.0, 31.0, -1.0> rotate a*y }
    #local a = a + 90;
    #end
        translate 5.5*y
        }
    scale 1/12
    }


Post a reply to this message


Attachments:
Download 'crate2-3.png' (522 KB)

Preview of image 'crate2-3.png'
crate2-3.png


 

Goto Latest 10 Messages Next 3 Messages >>>

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