開発メモ/ソースコード解析/Map関連


Total: 2086 / Today: 1 / Yesterday: 1

AlephOneのソースコードより

map.h/map.cpp

get_*_data(int)
指定したインデックスのデータをいろいろ取得できます。インデックスは0から*List.size()まで取得できます。たとえば点のデータならEndpointList.size()未満のインデックスを利用できます。当然マップを読み込んでいない状態では0です。
関数名実体リスト内容ポインタ
get_endpoint_data(int)EndpointList点データ?
get_line_data(int)LineListlines
get_side_data(int)SideListsides
get_polygon_data(int)PolygonListポリゴンpolygons
get_object_data(int)SavedObjectList物体?

interface.h/import_definitions.cpp

set_physics_file(FileSpecifier&)
Physicsファイルを指定します。FileSpecifierは生成時にパスを指定すればOK
import_definition_structures()
Physicsファイルから設定を読み込ませる関数です。set_physics_file(FileSpecifier&)を事前に呼んでおく必要があります。set_to_default_physics_file()はどうだったかな?PhysicsEditorOneでは修正点が加わっていることに注意。
export_definition_structures(const char*)
指定したファイルにPhysicsファイルを出力する関数です。

Pfhorte2のソースコードより

注意

Pforte2の作者は点や線のデータに独自のフォーマットを用いているため、AlephOneのソースコードと併用する場合大部分修正する必要があります。

ただしAlephOneのソースコードにはない非常に重要なものばかりです。

CLines.h/CLines.cpp

?FixLine(short, Boolean)
指定したインデックスの線情報を正しいものにします。線情報に必要なのは・点のインデックス・壁のインデックス・ポリゴンのインデックスとなっているので、これらをこの関数で設定しているようです。

Last Modified: 2007-01-27 14:57:39