public class PointCache extends CFacade
Modifier and Type | Field and Description |
---|---|
static long[] |
__DNA__FIELD__cached_frames
Field descriptor (offset) for struct member 'cached_frames'.
|
static long[] |
__DNA__FIELD__compression
Field descriptor (offset) for struct member 'compression'.
|
static long[] |
__DNA__FIELD__edit
Field descriptor (offset) for struct member 'edit'.
|
static long[] |
__DNA__FIELD__editframe
Field descriptor (offset) for struct member 'editframe'.
|
static long[] |
__DNA__FIELD__endframe
Field descriptor (offset) for struct member 'endframe'.
|
static long[] |
__DNA__FIELD__flag
Field descriptor (offset) for struct member 'flag'.
|
static long[] |
__DNA__FIELD__index
Field descriptor (offset) for struct member 'index'.
|
static long[] |
__DNA__FIELD__info
Field descriptor (offset) for struct member 'info'.
|
static long[] |
__DNA__FIELD__last_exact
Field descriptor (offset) for struct member 'last_exact'.
|
static long[] |
__DNA__FIELD__last_valid
Field descriptor (offset) for struct member 'last_valid'.
|
static long[] |
__DNA__FIELD__mem_cache
Field descriptor (offset) for struct member 'mem_cache'.
|
static long[] |
__DNA__FIELD__name
Field descriptor (offset) for struct member 'name'.
|
static long[] |
__DNA__FIELD__next
Field descriptor (offset) for struct member 'next'.
|
static long[] |
__DNA__FIELD__pad
Field descriptor (offset) for struct member 'pad'.
|
static long[] |
__DNA__FIELD__path
Field descriptor (offset) for struct member 'path'.
|
static long[] |
__DNA__FIELD__prev
Field descriptor (offset) for struct member 'prev'.
|
static long[] |
__DNA__FIELD__prev_name
Field descriptor (offset) for struct member 'prev_name'.
|
static long[] |
__DNA__FIELD__rt
Field descriptor (offset) for struct member 'rt'.
|
static long[] |
__DNA__FIELD__simframe
Field descriptor (offset) for struct member 'simframe'.
|
static long[] |
__DNA__FIELD__startframe
Field descriptor (offset) for struct member 'startframe'.
|
static long[] |
__DNA__FIELD__step
Field descriptor (offset) for struct member 'step'.
|
static long[] |
__DNA__FIELD__totpoint
Field descriptor (offset) for struct member 'totpoint'.
|
static int |
__DNA__SDNA_INDEX
This is the sdna index of the struct PointCache.
|
__io__address, __io__arch_index, __io__block, __io__blockTable, __io__pointersize
Modifier | Constructor and Description |
---|---|
|
PointCache(long __address,
Block __block,
BlockTable __blockTable) |
protected |
PointCache(PointCache that) |
Modifier and Type | Method and Description |
---|---|
CPointer<PointCache> |
__io__addressof()
Instantiates a pointer on this instance.
|
CPointer<java.lang.Byte> |
getCached_frames()
Get method for struct member 'cached_frames'.
|
short |
getCompression()
Get method for struct member 'compression'.
|
CPointer<java.lang.Object> |
getEdit()
Get method for struct member 'edit'.
|
int |
getEditframe()
Get method for struct member 'editframe'.
|
int |
getEndframe()
Get method for struct member 'endframe'.
|
int |
getFlag()
Get method for struct member 'flag'.
|
int |
getIndex()
Get method for struct member 'index'.
|
CArrayFacade<java.lang.Byte> |
getInfo()
Get method for struct member 'info'.
|
int |
getLast_exact()
Get method for struct member 'last_exact'.
|
int |
getLast_valid()
Get method for struct member 'last_valid'.
|
ListBase |
getMem_cache()
Get method for struct member 'mem_cache'.
|
CArrayFacade<java.lang.Byte> |
getName()
Get method for struct member 'name'.
|
CPointer<PointCache> |
getNext()
Get method for struct member 'next'.
|
int |
getPad()
Get method for struct member 'pad'.
|
CArrayFacade<java.lang.Byte> |
getPath()
Get method for struct member 'path'.
|
CArrayFacade<java.lang.Byte> |
getPrev_name()
Get method for struct member 'prev_name'.
|
CPointer<PointCache> |
getPrev()
Get method for struct member 'prev'.
|
short |
getRt()
Get method for struct member 'rt'.
|
int |
getSimframe()
Get method for struct member 'simframe'.
|
int |
getStartframe()
Get method for struct member 'startframe'.
|
int |
getStep()
Get method for struct member 'step'.
|
int |
getTotpoint()
Get method for struct member 'totpoint'.
|
void |
setCached_frames(CPointer<java.lang.Byte> cached_frames)
Set method for struct member 'cached_frames'.
|
void |
setCompression(short compression)
Set method for struct member 'compression'.
|
void |
setEdit(CPointer<java.lang.Object> edit)
Set method for struct member 'edit'.
|
void |
setEditframe(int editframe)
Set method for struct member 'editframe'.
|
void |
setEndframe(int endframe)
Set method for struct member 'endframe'.
|
void |
setFlag(int flag)
Set method for struct member 'flag'.
|
void |
setIndex(int index)
Set method for struct member 'index'.
|
void |
setInfo(CArrayFacade<java.lang.Byte> info)
Set method for struct member 'info'.
|
void |
setLast_exact(int last_exact)
Set method for struct member 'last_exact'.
|
void |
setLast_valid(int last_valid)
Set method for struct member 'last_valid'.
|
void |
setMem_cache(ListBase mem_cache)
Set method for struct member 'mem_cache'.
|
void |
setName(CArrayFacade<java.lang.Byte> name)
Set method for struct member 'name'.
|
void |
setNext(CPointer<PointCache> next)
Set method for struct member 'next'.
|
void |
setPad(int pad)
Set method for struct member 'pad'.
|
void |
setPath(CArrayFacade<java.lang.Byte> path)
Set method for struct member 'path'.
|
void |
setPrev_name(CArrayFacade<java.lang.Byte> prev_name)
Set method for struct member 'prev_name'.
|
void |
setPrev(CPointer<PointCache> prev)
Set method for struct member 'prev'.
|
void |
setRt(short rt)
Set method for struct member 'rt'.
|
void |
setSimframe(int simframe)
Set method for struct member 'simframe'.
|
void |
setStartframe(int startframe)
Set method for struct member 'startframe'.
|
void |
setStep(int step)
Set method for struct member 'step'.
|
void |
setTotpoint(int totpoint)
Set method for struct member 'totpoint'.
|
__io__addressof, __io__addressof, __io__equals, __io__generic__copy, __io__generic__copy, __io__instanceof, __io__native__copy, __io__newInstance, __io__same__encoding, __io__sizeof, __io__sizeof, __io__subclassof
public static final int __DNA__SDNA_INDEX
It is required when allocating a new block to store data for PointCache.
org.cakelab.blender.io.dna.internal.StructDNA}
,
org.cakelab.blender.io.block.BlockTable#allocate}
,
Constant Field Valuespublic static final long[] __DNA__FIELD__next
This is how you get a reference on the corresponding field in the struct:
PointCache pointcache = ...; CPointer<Object> p = pointcache.__dna__addressof(PointCache.__DNA__FIELD__next); CPointer<CPointer<PointCache>> p_next = p.cast(new Class[]{CPointer.class, PointCache.class});
public static final long[] __DNA__FIELD__prev
This is how you get a reference on the corresponding field in the struct:
PointCache pointcache = ...; CPointer<Object> p = pointcache.__dna__addressof(PointCache.__DNA__FIELD__prev); CPointer<CPointer<PointCache>> p_prev = p.cast(new Class[]{CPointer.class, PointCache.class});
public static final long[] __DNA__FIELD__flag
generic flag
This is how you get a reference on the corresponding field in the struct:
PointCache pointcache = ...; CPointer<Object> p = pointcache.__dna__addressof(PointCache.__DNA__FIELD__flag); CPointer<Integer> p_flag = p.cast(new Class[]{Integer.class});
public static final long[] __DNA__FIELD__step
The number of frames between cached frames. This should probably be an upper bound for a per point adaptive step in the future, buf for now it's the same for all points. Without adaptivity this can effect the perceived simulation quite a bit though. If for example particles are colliding with a horizontal plane (with high damping) they quickly come to a stop on the plane, however there are still forces acting on the particle (gravity and collisions), so the particle velocity isn't necessarily zero for the whole duration of the frame even if the particle seems stationary. If all simulation frames aren't cached (step > 1) these velocities are interpolated into movement for the non-cached frames. The result will look like the point is oscillating around the collision location. So for now cache step should be set to 1 for accurate reproduction of collisions.
This is how you get a reference on the corresponding field in the struct:
PointCache pointcache = ...; CPointer<Object> p = pointcache.__dna__addressof(PointCache.__DNA__FIELD__step); CPointer<Integer> p_step = p.cast(new Class[]{Integer.class});
public static final long[] __DNA__FIELD__simframe
current frame of simulation (only if SIMULATION_VALID)
This is how you get a reference on the corresponding field in the struct:
PointCache pointcache = ...; CPointer<Object> p = pointcache.__dna__addressof(PointCache.__DNA__FIELD__simframe); CPointer<Integer> p_simframe = p.cast(new Class[]{Integer.class});
public static final long[] __DNA__FIELD__startframe
simulation start frame
This is how you get a reference on the corresponding field in the struct:
PointCache pointcache = ...; CPointer<Object> p = pointcache.__dna__addressof(PointCache.__DNA__FIELD__startframe); CPointer<Integer> p_startframe = p.cast(new Class[]{Integer.class});
public static final long[] __DNA__FIELD__endframe
simulation end frame
This is how you get a reference on the corresponding field in the struct:
PointCache pointcache = ...; CPointer<Object> p = pointcache.__dna__addressof(PointCache.__DNA__FIELD__endframe); CPointer<Integer> p_endframe = p.cast(new Class[]{Integer.class});
public static final long[] __DNA__FIELD__editframe
frame being edited (runtime only)
This is how you get a reference on the corresponding field in the struct:
PointCache pointcache = ...; CPointer<Object> p = pointcache.__dna__addressof(PointCache.__DNA__FIELD__editframe); CPointer<Integer> p_editframe = p.cast(new Class[]{Integer.class});
public static final long[] __DNA__FIELD__last_exact
last exact frame that's cached
This is how you get a reference on the corresponding field in the struct:
PointCache pointcache = ...; CPointer<Object> p = pointcache.__dna__addressof(PointCache.__DNA__FIELD__last_exact); CPointer<Integer> p_last_exact = p.cast(new Class[]{Integer.class});
public static final long[] __DNA__FIELD__last_valid
used for editing cache - what is the last baked frame
This is how you get a reference on the corresponding field in the struct:
PointCache pointcache = ...; CPointer<Object> p = pointcache.__dna__addressof(PointCache.__DNA__FIELD__last_valid); CPointer<Integer> p_last_valid = p.cast(new Class[]{Integer.class});
public static final long[] __DNA__FIELD__pad
This is how you get a reference on the corresponding field in the struct:
PointCache pointcache = ...; CPointer<Object> p = pointcache.__dna__addressof(PointCache.__DNA__FIELD__pad); CPointer<Integer> p_pad = p.cast(new Class[]{Integer.class});
public static final long[] __DNA__FIELD__totpoint
for external cache files number of cached points
This is how you get a reference on the corresponding field in the struct:
PointCache pointcache = ...; CPointer<Object> p = pointcache.__dna__addressof(PointCache.__DNA__FIELD__totpoint); CPointer<Integer> p_totpoint = p.cast(new Class[]{Integer.class});
public static final long[] __DNA__FIELD__index
modifier stack index
This is how you get a reference on the corresponding field in the struct:
PointCache pointcache = ...; CPointer<Object> p = pointcache.__dna__addressof(PointCache.__DNA__FIELD__index); CPointer<Integer> p_index = p.cast(new Class[]{Integer.class});
public static final long[] __DNA__FIELD__compression
This is how you get a reference on the corresponding field in the struct:
PointCache pointcache = ...; CPointer<Object> p = pointcache.__dna__addressof(PointCache.__DNA__FIELD__compression); CPointer<Short> p_compression = p.cast(new Class[]{Short.class});
public static final long[] __DNA__FIELD__rt
This is how you get a reference on the corresponding field in the struct:
PointCache pointcache = ...; CPointer<Object> p = pointcache.__dna__addressof(PointCache.__DNA__FIELD__rt); CPointer<Short> p_rt = p.cast(new Class[]{Short.class});
public static final long[] __DNA__FIELD__name
This is how you get a reference on the corresponding field in the struct:
PointCache pointcache = ...; CPointer<Object> p = pointcache.__dna__addressof(PointCache.__DNA__FIELD__name); CPointer<CArrayFacade<Byte>> p_name = p.cast(new Class[]{CArrayFacade.class, Byte.class});
public static final long[] __DNA__FIELD__prev_name
This is how you get a reference on the corresponding field in the struct:
PointCache pointcache = ...; CPointer<Object> p = pointcache.__dna__addressof(PointCache.__DNA__FIELD__prev_name); CPointer<CArrayFacade<Byte>> p_prev_name = p.cast(new Class[]{CArrayFacade.class, Byte.class});
public static final long[] __DNA__FIELD__info
This is how you get a reference on the corresponding field in the struct:
PointCache pointcache = ...; CPointer<Object> p = pointcache.__dna__addressof(PointCache.__DNA__FIELD__info); CPointer<CArrayFacade<Byte>> p_info = p.cast(new Class[]{CArrayFacade.class, Byte.class});
public static final long[] __DNA__FIELD__path
file path, 1024 = FILE_MAX
This is how you get a reference on the corresponding field in the struct:
PointCache pointcache = ...; CPointer<Object> p = pointcache.__dna__addressof(PointCache.__DNA__FIELD__path); CPointer<CArrayFacade<Byte>> p_path = p.cast(new Class[]{CArrayFacade.class, Byte.class});
public static final long[] __DNA__FIELD__cached_frames
array of length endframe-startframe+1 with flags to indicate cached frames
This is how you get a reference on the corresponding field in the struct:
PointCache pointcache = ...; CPointer<Object> p = pointcache.__dna__addressof(PointCache.__DNA__FIELD__cached_frames); CPointer<CPointer<Byte>> p_cached_frames = p.cast(new Class[]{CPointer.class, Byte.class});
public static final long[] __DNA__FIELD__mem_cache
can be later used for other per frame flags too if needed
This is how you get a reference on the corresponding field in the struct:
PointCache pointcache = ...; CPointer<Object> p = pointcache.__dna__addressof(PointCache.__DNA__FIELD__mem_cache); CPointer<ListBase> p_mem_cache = p.cast(new Class[]{ListBase.class});
public static final long[] __DNA__FIELD__edit
This is how you get a reference on the corresponding field in the struct:
PointCache pointcache = ...; CPointer<Object> p = pointcache.__dna__addressof(PointCache.__DNA__FIELD__edit); CPointer<CPointer<Object>> p_edit = p.cast(new Class[]{CPointer.class, Object.class});
public PointCache(long __address, Block __block, BlockTable __blockTable)
protected PointCache(PointCache that)
public CPointer<PointCache> getNext() throws java.io.IOException
java.io.IOException
__DNA__FIELD__next
public void setNext(CPointer<PointCache> next) throws java.io.IOException
java.io.IOException
__DNA__FIELD__next
public CPointer<PointCache> getPrev() throws java.io.IOException
java.io.IOException
__DNA__FIELD__prev
public void setPrev(CPointer<PointCache> prev) throws java.io.IOException
java.io.IOException
__DNA__FIELD__prev
public int getFlag() throws java.io.IOException
generic flag
java.io.IOException
__DNA__FIELD__flag
public void setFlag(int flag) throws java.io.IOException
generic flag
java.io.IOException
__DNA__FIELD__flag
public int getStep() throws java.io.IOException
The number of frames between cached frames. This should probably be an upper bound for a per point adaptive step in the future, buf for now it's the same for all points. Without adaptivity this can effect the perceived simulation quite a bit though. If for example particles are colliding with a horizontal plane (with high damping) they quickly come to a stop on the plane, however there are still forces acting on the particle (gravity and collisions), so the particle velocity isn't necessarily zero for the whole duration of the frame even if the particle seems stationary. If all simulation frames aren't cached (step > 1) these velocities are interpolated into movement for the non-cached frames. The result will look like the point is oscillating around the collision location. So for now cache step should be set to 1 for accurate reproduction of collisions.
java.io.IOException
__DNA__FIELD__step
public void setStep(int step) throws java.io.IOException
The number of frames between cached frames. This should probably be an upper bound for a per point adaptive step in the future, buf for now it's the same for all points. Without adaptivity this can effect the perceived simulation quite a bit though. If for example particles are colliding with a horizontal plane (with high damping) they quickly come to a stop on the plane, however there are still forces acting on the particle (gravity and collisions), so the particle velocity isn't necessarily zero for the whole duration of the frame even if the particle seems stationary. If all simulation frames aren't cached (step > 1) these velocities are interpolated into movement for the non-cached frames. The result will look like the point is oscillating around the collision location. So for now cache step should be set to 1 for accurate reproduction of collisions.
java.io.IOException
__DNA__FIELD__step
public int getSimframe() throws java.io.IOException
current frame of simulation (only if SIMULATION_VALID)
java.io.IOException
__DNA__FIELD__simframe
public void setSimframe(int simframe) throws java.io.IOException
current frame of simulation (only if SIMULATION_VALID)
java.io.IOException
__DNA__FIELD__simframe
public int getStartframe() throws java.io.IOException
simulation start frame
java.io.IOException
__DNA__FIELD__startframe
public void setStartframe(int startframe) throws java.io.IOException
simulation start frame
java.io.IOException
__DNA__FIELD__startframe
public int getEndframe() throws java.io.IOException
simulation end frame
java.io.IOException
__DNA__FIELD__endframe
public void setEndframe(int endframe) throws java.io.IOException
simulation end frame
java.io.IOException
__DNA__FIELD__endframe
public int getEditframe() throws java.io.IOException
frame being edited (runtime only)
java.io.IOException
__DNA__FIELD__editframe
public void setEditframe(int editframe) throws java.io.IOException
frame being edited (runtime only)
java.io.IOException
__DNA__FIELD__editframe
public int getLast_exact() throws java.io.IOException
last exact frame that's cached
java.io.IOException
__DNA__FIELD__last_exact
public void setLast_exact(int last_exact) throws java.io.IOException
last exact frame that's cached
java.io.IOException
__DNA__FIELD__last_exact
public int getLast_valid() throws java.io.IOException
used for editing cache - what is the last baked frame
java.io.IOException
__DNA__FIELD__last_valid
public void setLast_valid(int last_valid) throws java.io.IOException
used for editing cache - what is the last baked frame
java.io.IOException
__DNA__FIELD__last_valid
public int getPad() throws java.io.IOException
java.io.IOException
__DNA__FIELD__pad
public void setPad(int pad) throws java.io.IOException
java.io.IOException
__DNA__FIELD__pad
public int getTotpoint() throws java.io.IOException
for external cache files number of cached points
java.io.IOException
__DNA__FIELD__totpoint
public void setTotpoint(int totpoint) throws java.io.IOException
for external cache files number of cached points
java.io.IOException
__DNA__FIELD__totpoint
public int getIndex() throws java.io.IOException
modifier stack index
java.io.IOException
__DNA__FIELD__index
public void setIndex(int index) throws java.io.IOException
modifier stack index
java.io.IOException
__DNA__FIELD__index
public short getCompression() throws java.io.IOException
java.io.IOException
__DNA__FIELD__compression
public void setCompression(short compression) throws java.io.IOException
java.io.IOException
__DNA__FIELD__compression
public short getRt() throws java.io.IOException
java.io.IOException
__DNA__FIELD__rt
public void setRt(short rt) throws java.io.IOException
java.io.IOException
__DNA__FIELD__rt
public CArrayFacade<java.lang.Byte> getName() throws java.io.IOException
java.io.IOException
__DNA__FIELD__name
public void setName(CArrayFacade<java.lang.Byte> name) throws java.io.IOException
java.io.IOException
__DNA__FIELD__name
public CArrayFacade<java.lang.Byte> getPrev_name() throws java.io.IOException
java.io.IOException
__DNA__FIELD__prev_name
public void setPrev_name(CArrayFacade<java.lang.Byte> prev_name) throws java.io.IOException
java.io.IOException
__DNA__FIELD__prev_name
public CArrayFacade<java.lang.Byte> getInfo() throws java.io.IOException
java.io.IOException
__DNA__FIELD__info
public void setInfo(CArrayFacade<java.lang.Byte> info) throws java.io.IOException
java.io.IOException
__DNA__FIELD__info
public CArrayFacade<java.lang.Byte> getPath() throws java.io.IOException
file path, 1024 = FILE_MAX
java.io.IOException
__DNA__FIELD__path
public void setPath(CArrayFacade<java.lang.Byte> path) throws java.io.IOException
file path, 1024 = FILE_MAX
java.io.IOException
__DNA__FIELD__path
public CPointer<java.lang.Byte> getCached_frames() throws java.io.IOException
array of length endframe-startframe+1 with flags to indicate cached frames
java.io.IOException
__DNA__FIELD__cached_frames
public void setCached_frames(CPointer<java.lang.Byte> cached_frames) throws java.io.IOException
array of length endframe-startframe+1 with flags to indicate cached frames
java.io.IOException
__DNA__FIELD__cached_frames
public ListBase getMem_cache() throws java.io.IOException
can be later used for other per frame flags too if needed
java.io.IOException
__DNA__FIELD__mem_cache
public void setMem_cache(ListBase mem_cache) throws java.io.IOException
can be later used for other per frame flags too if needed
java.io.IOException
__DNA__FIELD__mem_cache
public CPointer<java.lang.Object> getEdit() throws java.io.IOException
java.io.IOException
__DNA__FIELD__edit
public void setEdit(CPointer<java.lang.Object> edit) throws java.io.IOException
java.io.IOException
__DNA__FIELD__edit
public CPointer<PointCache> __io__addressof()