POV-Ray : Newsgroups : povray.unofficial.patches : Sim-POV Feature Requests No. 1 Server Time
28 Jun 2024 16:06:12 EDT (-0400)
  Sim-POV Feature Requests No. 1 (Message 1 to 7 of 7)  
From: Andrew Cocker
Subject: Sim-POV Feature Requests No. 1
Date: 13 Dec 2002 17:58:22
Message: <3dfa660e$1@news.povray.org>
Hi Christoph,

Having used Sim-POV for a short while, there are a couple of things I'd like to be
able to do,
that aren't (I don't think) possible at the moment:

1) Being able to assign a seperate texture for each group (when faces are assigned),
rather
than everything having the same MSim_Tex_Mesh. Would it be possible to assign the
texture
within the topology of each group?

2) When faces are turned on in, for eg. MechSim_Generate_Grid_Std(), would it be
possible to
have a smooth mesh on the surface of the resulting boxes (with the edges obviously
staying
sharp)?

//-------------
Also:
I'd like to create a letter 'T' shape (or other permutations of connected shapes), but
it's
not immediately obvious to me how to link together 2 or more blocks of grids. Any
ideas how
I'd go about this? I think it's probably the method you used in your example anim that
had a
sort of crane in it.

All the best,

Andy Cocker


Post a reply to this message

From: Christoph Hormann
Subject: Re: Sim-POV Feature Requests No. 1
Date: 14 Dec 2002 04:19:54
Message: <3DFAF7BA.FC69DF07@gmx.de>
Andrew Cocker wrote:
> 
> 1) Being able to assign a seperate texture for each group (when faces are assigned),
rather
> than everything having the same MSim_Tex_Mesh. Would it be possible to assign the
texture
> within the topology of each group?
> 
> 2) When faces are turned on in, for eg. MechSim_Generate_Grid_Std(), would it be
possible to
> have a smooth mesh on the surface of the resulting boxes (with the edges obviously
staying
> sharp)?

Forst of all both things are nothing that requires a change in the patch
itself.  

1: That's a matter of displaying the topology.  You can use a separate
MechSim_Show_Objects() for each group and texture them differently:

#declare Obj1=MechSim_Show_Objects(...)

object {
  Obj1
  texture { ... }
}

MechSim_Show_Patch() would work alike.

2: There are two possible ways of smoothing a mesh in such a case.  You
can either use a threshold for the angle between the faces to determine
whether to smooth the normal vectors or for a rectangular grid you can of
course determine from the node index if the normals should be smoothed. 
Both things can be implemented in macros.

> //-------------
> Also:
> I'd like to create a letter 'T' shape (or other permutations of connected shapes),
but it's
> not immediately obvious to me how to link together 2 or more blocks of grids. Any
ideas how
> I'd go about this? I think it's probably the method you used in your example anim
that had a
> sort of crane in it.

You have to link them exactly how they are linked internally, i.e. create
connections between adjacent masses.  

The cranes you can see on my website are not created with the same system
but essentially the interconnections are created one by one manually.  

Christoph

-- 
POV-Ray tutorials, include files, Sim-POV,
HCR-Edit and more: http://www.tu-bs.de/~y0013390/
Last updated 07 Dec. 2002 _____./\/^>_*_<^\/\.______


Post a reply to this message

From: Andrew Cocker
Subject: Re: Sim-POV Feature Requests No. 1
Date: 15 Dec 2002 07:12:24
Message: <3dfc71a8$1@news.povray.org>
"Christoph Hormann" <chr### [at] gmxde> wrote in message
news:3DFAF7BA.FC69DF07@gmx.de...
> Forst of all both things are nothing that requires a change in the patch
> itself.
>
> 1: That's a matter of displaying the topology.  You can use a separate
> MechSim_Show_Objects() for each group and texture them differently:
>
> #declare Obj1=MechSim_Show_Objects(...)
>
> object {
>   Obj1
>   texture { ... }
> }
>
> MechSim_Show_Patch() would work alike.

Ok...good. I haven't seen how I would do that in the docs... I shall re-read them.

> 2: There are two possible ways of smoothing a mesh in such a case.  You
> can either use a threshold for the angle between the faces to determine
> whether to smooth the normal vectors or for a rectangular grid you can of
> course determine from the node index if the normals should be smoothed.
> Both things can be implemented in macros.

By you in next release? (I am very poor with macros)

Also, the ability to UV_Map everything would be nice too. (Once again, I am assuming
that it
is not currently possible to do so in the current release, but I apologise If it is
and I
simply haven't understood (again!;-)))

All the best,

Andy Cocker


Post a reply to this message

From: Andrew Cocker
Subject: Re: Sim-POV Feature Requests No. 1
Date: 15 Dec 2002 10:24:51
Message: <3dfc9ec3$1@news.povray.org>
Christoph,

Ok, I sort-of understand, but it's not working. Can you tell me what I'm doing wrong
please?
In this scene, I just want to have 3 blocks, each textured differently:

My Topology:
topology {
      #declare Start_Mass_Part1=mechsim:mass_count;
      #declare Start_Connection_Part1=mechsim:connection_count;
      group {
            MechSim_Generate_Grid_Std(<5, 0, 0>, 0.022, 25000, 25000, 2000, true,
<0.4,0.4,0.4>, <4, 4, 4>, Trans1, 3)
            }
      #declare Start_Mass_Part2=mechsim:mass_count;
      #declare Start_Connection_Part2=mechsim:connection_count;
      group {
            MechSim_Generate_Grid_Std(<-5, 0, 0>, 0.022, 50000, 25000, 2000, true,
<0.4,0.4,0.4>, <4, 4, 4>, Trans2, 3)
            }
      #declare Start_Mass_Part3=mechsim:mass_count;
      #declare Start_Connection_Part3=mechsim:connection_count;
      group {
            MechSim_Generate_Grid_Std(<0, 0, 0>, 0.022, 50000, 25000, 2000, true,
<0.4,0.4,0.4>, <2, 8, 8>, Trans3, 3)
            }
//--------------

Then later, I use:

declare Tex1=
texture {
pigment { rgb <1,0,0>}
finish { ambient 0.00 diffuse 1 specular 1 roughness 0.01 }
}

#declare Tex2=
texture {
pigment { rgb <0,1,0>}
finish { ambient 0.00 diffuse 1 specular 1 roughness 0.01 }
}

#declare Tex3=
texture {
pigment { rgb <0,0,1>}
finish { ambient 0.00 diffuse 1 specular 1 roughness 0.01 }
}


#declare Shape1 = object {MechSim_Show_Objects(1,1,1,1,1,1,-1, false, -1, "")}
#declare Shape2 = object {MechSim_Show_Objects(2,2,2,2,2,2,-1, false, -1, "")}
#declare Shape3 = object {MechSim_Show_Objects(3,3,3,3,3,3,-1, false, -1, "")}

object {Shape1 texture {Tex1}}
object {Shape2 texture {Tex2}}
object {Shape3 texture {Tex3}}

//------------------
Sim-POV complains that there are no faces. I tried adding #declare
Start_Face_Part1=mechsim:face_count; to each group, but that didn't work.

Any ideas? Perhaps you could provide a working example?

All the best,

Andy Cocker


Post a reply to this message

From: Andrew Cocker
Subject: Re: Sim-POV Feature Requests No. 1
Date: 15 Dec 2002 10:36:36
Message: <3dfca184$1@news.povray.org>
> #declare Shape1 = object {MechSim_Show_Objects(1,1,1,1,1,1,-1, false, -1, "")}
> #declare Shape2 = object {MechSim_Show_Objects(2,2,2,2,2,2,-1, false, -1, "")}
> #declare Shape3 = object {MechSim_Show_Objects(3,3,3,3,3,3,-1, false, -1, "")}

Hmmm.. just had a though (though i can't test it at the moment as I'm rendering
another
animation), but should the above read:

 #declare Shape1 = object {MechSim_Show_Objects(1,1,1,2,2,2,-1, false, -1, "")}
 #declare Shape2 = object {MechSim_Show_Objects(2,2,2,3,3,3,-1, false, -1, "")}
 #declare Shape3 = object {MechSim_Show_Objects(3,3,3,-1,-1,-1,-1, false, -1, "")}

No... hang on, re-reading the macro explanation in mechsim.inc, I believe that it
should be
something like:

#declare Shape1 = object {MechSim_Show_Objects(1,1,1,100,100,100,-1, false, -1, "")}
 #declare Shape2 = object {MechSim_Show_Objects(101,101,101,200,200,200,-1, false, -1,
"")}
 #declare Shape3 = object {MechSim_Show_Objects(201,201,201,-1,-1,-1,-1, false, -1,
"")}

If this is correct, is there an easy way of determining what the range of masses or
faces
belong to which group?

Andy Cocker


Post a reply to this message

From: Christoph Hormann
Subject: Re: Sim-POV Feature Requests No. 1
Date: 16 Dec 2002 10:14:19
Message: <3DFDEDC8.BD43B840@gmx.de>
Andrew Cocker wrote:
> 
> [...]
> 
> If this is correct, is there an easy way of determining what the range of masses or
faces
> belong to which group?

You already mentioned it in your last post, use something like:

#declare Start_Mass_Part1=mechsim:mass_count;

during creation of the masses and you can determine the mass indices of
the different parts.

I will consider adding 

mechsim:mass(Index):group

etc. in some future version but it isn't that useful after all.

Christoph

-- 
POV-Ray tutorials, include files, Sim-POV,
HCR-Edit and more: http://www.tu-bs.de/~y0013390/
Last updated 07 Dec. 2002 _____./\/^>_*_<^\/\.______


Post a reply to this message

From: Christoph Hormann
Subject: Re: Sim-POV Feature Requests No. 1
Date: 16 Dec 2002 10:21:22
Message: <3DFDEF71.D7821204@gmx.de>
Andrew Cocker wrote:
> 
> > 2: There are two possible ways of smoothing a mesh in such a case.  You
> > can either use a threshold for the angle between the faces to determine
> > whether to smooth the normal vectors or for a rectangular grid you can of
> > course determine from the node index if the normals should be smoothed.
> > Both things can be implemented in macros.
> 
> By you in next release? (I am very poor with macros)

Definitely not in the next version.  If someone supplies the necessary
modifications i would be happy to include them of course.

> 
> Also, the ability to UV_Map everything would be nice too. (Once again, I am assuming
that it
> is not currently possible to do so in the current release, but I apologise If it is
and I
> simply haven't understood (again!;-)))

Well, it isn't possible to program a mind reading macro or patch so you
can't automatically uv-map everything.  Of course you can create uv
coordinates for the box shaped grids representing the uv mapping of the
POV-Ray box shape.

Christoph

-- 
POV-Ray tutorials, include files, Sim-POV,
HCR-Edit and more: http://www.tu-bs.de/~y0013390/
Last updated 07 Dec. 2002 _____./\/^>_*_<^\/\.______


Post a reply to this message

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