ModelRoot

from panda3d.core import ModelRoot
class ModelRoot

Bases: ModelNode

A node of this type is created automatically at the root of each model file that is loaded. It may eventually contain some information about the contents of the model; at the moment, it contains no special information, but can be used as a flag to indicate the presence of a loaded model file.

Inheritance diagram

Inheritance diagram of ModelRoot

class ModelReference

Bases: ReferenceCount

This class is used to unify references to the same model.

__init__()
__init__(param0: ModelReference)
__init__(fullpath: Filename, timestamp: int)
__init__(name: str)
property fullpathFilename
Getter

Returns the full pathname of the model represented by this node, as found on disk. This is mainly useful for reference purposes, but is also used to index the ModelRoot into the ModelPool.

Setter

Sets the full pathname of the model represented by this node, as found on disk. This is mainly useful for reference purposes, but is also used to index the ModelRoot into the ModelPool.

This is normally set automatically when a model is loaded, and should not be set directly by the user. If you change this on a loaded model, then ModelPool.releaseModel() may fail.

static getClassType()TypeHandle
getFullpath()Filename

Returns the full pathname of the model represented by this node, as found on disk. This is mainly useful for reference purposes, but is also used to index the ModelRoot into the ModelPool.

getModelRefCount()int

Returns the number of copies that exist of this particular ModelRoot node. Each time ModelRoot::copy_subgraph() or make_copy() is called (or some other copying mechanism, such as copyTo(), is used), this count will increment by one in all copies; when one of the copies is destructed, this count will decrement.

getReference()ModelReference

Returns the pointer that represents the object shared between all copies of this ModelRoot. Since there’s not much associated with this object other than a reference count, normally there’s not much reason to get the pointer (though it may be compared pointerwise with other ModelRoot objects).

getTimestamp()int

Returns the timestamp of the file on disk that was read for this model, at the time it was read, if it is known. Returns 0 if the timestamp is not known or could not be provided. This can be used as a quick (but fallible) check to verify whether the file might have changed since the model was read.

property model_ref_countint

Returns the number of copies that exist of this particular ModelRoot node. Each time ModelRoot::copy_subgraph() or make_copy() is called (or some other copying mechanism, such as copyTo(), is used), this count will increment by one in all copies; when one of the copies is destructed, this count will decrement.

property referenceModelReference
Getter

Returns the pointer that represents the object shared between all copies of this ModelRoot. Since there’s not much associated with this object other than a reference count, normally there’s not much reason to get the pointer (though it may be compared pointerwise with other ModelRoot objects).

Setter

Changes the pointer that represents the object shared between all copies of this ModelRoot. This will disassociate this ModelRoot from all of its copies. Normally, there’s no reason to do this.

setFullpath(fullpath: Filename)None

Sets the full pathname of the model represented by this node, as found on disk. This is mainly useful for reference purposes, but is also used to index the ModelRoot into the ModelPool.

This is normally set automatically when a model is loaded, and should not be set directly by the user. If you change this on a loaded model, then ModelPool.releaseModel() may fail.

setReference(ref: ModelReference)None

Changes the pointer that represents the object shared between all copies of this ModelRoot. This will disassociate this ModelRoot from all of its copies. Normally, there’s no reason to do this.

setTimestamp(timestamp: int)None

Sets the timestamp of the file on disk that was read for this model. This is normally set automatically when a model is loaded, and should not be set directly by the user.

property timestampint
Getter

Returns the timestamp of the file on disk that was read for this model, at the time it was read, if it is known. Returns 0 if the timestamp is not known or could not be provided. This can be used as a quick (but fallible) check to verify whether the file might have changed since the model was read.

Setter

Sets the timestamp of the file on disk that was read for this model. This is normally set automatically when a model is loaded, and should not be set directly by the user.