REFSKRIPT

; $VER: prtparam.men 1.0 (07.02.98)
;
; Author   : stephan.bielmann@rega-sense.ch
;
; Comments : Changes one parameter of each particle in a
;            particle object. That means the color, the size and
;            the strength.
;

INIT


;Get all needed parameters

GET_GEO_OBJ        Partikelobjekt
RETURN_IF_ABBRUCH  AB
GET_RESULT         vprtobj

OBJ_GET_ID         vprtobj
GET_RESULT         vid
IF_EQUAL_GOTO      vid 27 nextstep

MELDUNG            Kein Partikelobjekt
GOTO               terminate

>nextstep:

GET_JA_NEIN        Nur die Selektierten Punkte ?
GET_RESULT         vresult

IF_STR_EQUAL_GOTO  vresult NEIN allpoints
PRT_SET_RANGE      vprtobj 2
GOTO               nextparam

>allpoints:
PRT_SET_RANGE      vprtobj 0

>nextparam:
GET_AUSWAHL Parameter Farbe Grösse
RETURN_IF_ABBRUCH  AB
GET_RESULT         vresult
IF_STR_EQUAL_GOTO  vresult Farbe   colorchange
IF_STR_EQUAL_GOTO  vresult Grösse sizechange

>colorchange:

GET_REAL           Minimaler Rotanteil (0..255)
RETURN_IF_ABBRUCH  AB
GET_RESULT         vrmin

GET_REAL           Maximaler Rotanteil (0..255)
RETURN_IF_ABBRUCH  AB
GET_RESULT         vrmax

GET_REAL           Minimaler Grünanteil (0..255)
RETURN_IF_ABBRUCH  AB
GET_RESULT         vgmin

GET_REAL           Maximaler Grünanteil (0..255)
RETURN_IF_ABBRUCH  AB
GET_RESULT         vgmax

GET_REAL           Minimaler Blauanteil (0..255)
RETURN_IF_ABBRUCH  AB
GET_RESULT         vbmin

GET_REAL           Maximaler Blauanteil (0..255)
RETURN_IF_ABBRUCH  AB
GET_RESULT         vbmax


;Changing the entered colors to real particle colors

DIV        vrmin 255
GET_RESULT vrmin
DIV        vrmax 255
GET_RESULT vrmax

DIV        vgmin 255
GET_RESULT vgmin
DIV        vgmax 255
GET_RESULT vgmax

DIV        vbmin 255
GET_RESULT vbmin
DIV        vbmax 255
GET_RESULT vbmax


;Setting the color of the particles

PRT_SET_COL   vprtobj vrmin vgmin vbmin vrmax vgmax vbmax


;Informing the user

PRINT Farbe von vname veraendert

GOTO  terminate

>sizechange:

GET_REAL           Minimale Stärke der Partikel
RETURN_IF_ABBRUCH  AB
GET_RESULT         vstrongmin

GET_REAL           Maximale Stärke der Partikel
RETURN_IF_ABBRUCH  AB
GET_RESULT         vstrongmax

GET_REAL           Minimaler Radius der Partikel
RETURN_IF_ABBRUCH  AB
GET_RESULT         vradiusmin

GET_REAL           Maximaler Radius der Partikel
RETURN_IF_ABBRUCH  AB
GET_RESULT         vradiusmax

PRT_SET_SIZE  vprtobj vstrongmin vradiusmin vstrongmax vradiusmax


;Informing the user

PRINT Groesse von vname veraendert


;Terminating

>terminate:

RETURN OK
