mmf
Class MMF_TrapTransformZold

Object
  extended by common:Generic
      extended by common:Transform
          extended by common:UserTransform
              extended by mmf:MMF_TrapTransformZold
Direct Known Subclasses:
MMF_CrossProduct, MMF_TrapTransformInterpolation

class 
UserTransform:MMF_TrapTransformZold

Base class for trap transforms requiring zold and/or zolder


Ultra Fractal Source

Toggle UF Source Code Display

 class MMF_TrapTransformZold(common.ulb:UserTransform) {
 ; Base class for trap transforms requiring zold and/or zolder<br>  
 public:
   import "common.ulb"
 
   ; @param pparent the parent, generally "this" for the parent, or zero
   func MMF_TrapTransformZold(Generic pparent)
     UserTransform.UserTransform(pparent)
   endfunc
 
   ; Initialise m_zolder, m_zold, m_zolderok and m_zoldok<br>  
   ; @param pz the z value  
   func Init(complex pz)
     UserTransform.Init(pz)
     m_zolder = m_zold = pz
     m_zolderok = m_zoldok = false
   endfunc
 
   ; <p>Note that derived functions should update zold, zolder, zoldok
   ; and zolderok as necessary<br>  
   ; @param pz the z value  
   ; @return new z
   complex func Iterate(complex pz)
     m_Iterations = m_Iterations + 1
     return pz
   endfunc
   
   ; Here the "old" flags are set to false<br>  
   func IterateSilent()
     m_Iterations = m_Iterations + 1
     m_zolderok = m_zoldok = false
   endfunc
 
   ; <p>This is basically IterateSilent extended so that the values of
   ; zold and zolder are kept up to date.<br>  
   ; @param pz the z value  
   func IterateSilentZold(complex pz)
     m_Iterations = m_Iterations + 1
     m_zolder = m_zold
     m_zold = pz
     m_zolderok = m_zoldok
     m_zoldok = true
   endfunc
 
 protected:
   complex m_zold
   complex m_zolder
   bool m_zoldok
   bool m_zolderok
 
 default:
   int param v_mmftraptransformzold
     caption = "Version (MMF_TrapTransformZold)"
     default = 100
     hint = "This version parameter is used to detect when a change \
             has been made to the formula that is incompatible with \
             the previous version. When that happens, this field will \
             reflect the old version number to alert you to the fact \
             that an alternate rendering is being used."
     visible = @v_mmftraptransformzold < 100
   endparam
   heading
     text = "This transform is designed for use with formulas that \
             understand the use of zold and zolder such as MMF Smooth \
             Orbit Traps from mmf.ulb or similar formulas but will \
             work with reduced functionality in other situations."
   endheading
 }
 


Constructor Summary
MMF_TrapTransformZold()
           
MMF_TrapTransformZold(Generic pparent)
           
 
Method Summary
 void Init(complex pz)
          Initialise m_zolder, m_zold, m_zolderok and m_zoldok
 complex Iterate(complex pz)
          Note that derived functions should update zold, zolder, zoldok and zolderok as necessary
 void IterateSilent()
          Here the "old" flags are set to false
 void IterateSilentZold(complex pz)
          This is basically IterateSilent extended so that the values of zold and zolder are kept up to date.
 
Methods inherited from class common:Transform
IsSolid
 
Methods inherited from class common:Generic
GetParent
 
Methods inherited from class Object
 

Constructor Detail

MMF_TrapTransformZold

public MMF_TrapTransformZold(Generic pparent)
Parameters:
pparent - the parent, generally "this" for the parent, or zero

MMF_TrapTransformZold

public MMF_TrapTransformZold()
Method Detail

Init

public void Init(complex pz)
Initialise m_zolder, m_zold, m_zolderok and m_zoldok

Overrides:
Init in class Transform
Parameters:
pz - the z value

Iterate

public complex Iterate(complex pz)

Note that derived functions should update zold, zolder, zoldok and zolderok as necessary

Overrides:
Iterate in class Transform
Parameters:
pz - the z value
Returns:
new z

IterateSilent

public void IterateSilent()
Here the "old" flags are set to false

Overrides:
IterateSilent in class Transform

IterateSilentZold

public void IterateSilentZold(complex pz)

This is basically IterateSilent extended so that the values of zold and zolder are kept up to date.

Parameters:
pz - the z value