POV-Ray : Newsgroups : povray.advanced-users : Condition in functions : Condition in functions Server Time
21 Dec 2024 12:14:16 EST (-0500)
  Condition in functions  
From: kurtz le pirate
Date: 6 Dec 2024 06:15:08
Message: <6752dcbc@news.povray.org>
Hello,

This exemple come from MathMod, "Vase_3 by Abderrahman Taha 31/10/2019"

Several isosurfaces and functions including these two :

isoTransform_2 = 
if(CarvinCondition(x,y,z,t)=(0),ThickIsoExterior(x,y,z,t),1)"

isoTransform_6=if(CarvinCondition(x,y,z,t)&ThickIsoExterior(x,y,z,t)<(0),-ThickIso2((6*x),(6*y),(6*z),t)*Iso6((x*6),(y*6),(z*6),-1)

*(Iso6((x*6),(y*6),(z*6),1)),1)"

CarvinCondition, ThickIsoExterior, ThickIso2, Iso6 are others functions.



The (my) transcription for POV gives :

#declare isoTransform_2 = function(x,y,z,T) {
  	select (
		// A (condition)
  		CarvinCondition(x,y,z,T),
		// B : A < 0
   		ThickIsoExterior(x,y,z,T),
  		// C : A = 0
  		1,
  		// D : A > 0
   		ThickIsoExterior(x,y,z,T)
   		)
   	}

#declare isoTransform_6 = function(x,y,z,T) {
	select (
		// A (condition)
		(CarvinCondition(x,y,z,T) & ThickIsoExterior(x,y,z,T)),
		// B : A <0
		-ThickIso2((6*x),(6*y),(6*z),T) * Iso6((x*6),(y*6),(z*6),-1) * 
(Iso6((x*6),(y*6),(z*6),1)),
		// C : A >= 0
  		1
  		)
  	}


Do you agree with the use of select() to replace if() ?
I'm struggling a bit and I would like to check this option already.



On the left is MathMod, on the right where I am.
I'm trying to figure out why the “laces” are missing.





Thanks



-- 
kurtz le pirate
compagnie de la banquise


Post a reply to this message


Attachments:
Download 'vase.png' (102 KB)

Preview of image 'vase.png'
vase.png


 

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