|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES All Classes | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectcodesimian.CS<CSGeneric>
codesimian.DefaultCS
codesimian.xyz.Verify3DObject
public class Verify3DObject
NEW DESIGN (not yet implemented):
Verify3DObject is a 3D object. The Object(s) it verifies are in P(0),
and the max recursive depth (and possibly other options) are in P(1).
The advantage to verifying multiple 3d objects at once is the OVERLAPPING
recursive calls are done only once.
POSSIBLY OBSOLETE:
Verifies (to some recursive depth) that a CS is a 3D object. P(0) is the CS to test.
P(1) is the required recursive depth to check if child objects are also 3D objects,
and if it doesnt exist, defaults to 0 (weakest testing).
Recursive depth 0 does not care what the childs are or how many, and requires P(1).countP() be at least 7.
Later, code should be written to look for cycles in the network of 3d objects
and to test the leafs first, then parents of leafs, then parents of those parents... until test the root.
That would be more efficient because cycles do not cause duplicate testing, and
A 3d object is a CS whose P(0) is a list of child 3d objects,
and whose P(1) is a list of 7 or more numbers: x y and z positions, x y and z speeds, radius.
Field Summary |
---|
Fields inherited from class codesimian.CS |
---|
DESCRIPTION, END, EXECPROXY, HEAP, JAVACODE, MYFUEL, NAME, NEWINSTANCE, NULL, PARENT, PARSEPRIORITY, PREV, TESTER, THIS |
Constructor Summary | |
---|---|
Verify3DObject()
|
Method Summary | |
---|---|
double |
DForProxy()
Execute this CS and cast to double. |
java.lang.String |
keyword()
For the CodeSimian language as a String. CodeSimian language keyword, like "+" "*" "max" ">" etc. Override this function if you want to specify a keyword other than how I derive them from the class name, like + for Add. Some CSs might never be intended to be used in the language by their keyword. The best example (4/05) is Num, because it is used in the language like "3.4" instead of "num()". |
int |
maxP()
Maximum quantity of Params |
int |
minP()
For DForProxy(). Minimum number of parameters in param[] needed to call DForProxy(). Defines which indexs of param[] DForProxy() can use. Functions with a different number of parameters must override this. OVERRIDE THIS FUNCTION IF EXEC USES A DIFFERENT NUMBER OF PARAMETERS. Default is 1. |
static double |
verifyPositionAndRadius(double[] d)
Returns positive if the sphere described by 7 numbers (8th 9th etc are ignored) is inside (not touching boundary of) the unit sphere (radius 1, centered at 0,0,0) |
static boolean |
verifyRecursively(CS root,
int depth,
CS traversed)
first, nonrecursively verifies root then adds root to traversed, if its not already there. |
Methods inherited from class codesimian.DefaultCS |
---|
B, C, countP, decrementMyFuel, deleteP, description, F, fuel, getExec, getObject, heap, I, indexP, indexPName, insertB, insertC, insertD, insertF, insertI, insertJ, insertL, insertL, insertL1, insertP, insertS, insertZ, J, javaCode, LForProxy, LForProxy, myFuel, name, newInstance, objectToCS, objectToCSArray, objectToCSArray, P, prevD, prevL, PType, S, setB, setC, setCountP, setD, setD, setExec, setF, setFuel, setI, setJ, setL, setL, setL, setL1, setMyFuel, setName, setObject, setP, setPrevExec, setPType, setS, setZ, start, toString, V, Z |
Methods inherited from class codesimian.CS |
---|
addB, addC, addD, addF, addI, addJ, addL, addP, addP, addP, addP, addP, addS, addZ, BForProxy, CForProxy, clone, cost, D, deleteP, FForProxy, GETB, GETC, GETD, GETF, GETI, GETJ, GETL, GETS, GETZ, IForProxy, isIllusion, JForProxy, L, L, L, L, L, maxD, minD, overwrites, parent, parsePriority, PB, PC, PD, PF, PI, PJ, PL, prevB, prevC, prevF, prevI, prevJ, prevS, prevZ, proxyOf, PS, PZ, reflect, reflect, reflect6, setB, SETB, setC, SETC, setCost, SETD, setDescription, setF, SETF, setHeap, setI, SETI, setJ, SETJ, SETL, setL, setL, setParent, setParsePriority, setProxyOf, setS, SETS, setTester, setZ, SETZ, SForProxy, tester, toJavaCode, VForProxy, voidReflect, ZForProxy |
Methods inherited from class java.lang.Object |
---|
equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
Constructor Detail |
---|
public Verify3DObject()
Method Detail |
---|
public double DForProxy()
CS
DForProxy
in class DefaultCS
public int minP()
DefaultCS
minP
in class DefaultCS
public int maxP()
CS
maxP
in class CS
public java.lang.String keyword()
DefaultCS
keyword
in class DefaultCS
CS.parent()
,
CS.newInstance()
,
CS.name()
public static double verifyPositionAndRadius(double[] d)
public static boolean verifyRecursively(CS root, int depth, CS traversed)
|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES All Classes | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |