File tree Expand file tree Collapse file tree 4 files changed +9
-6
lines changed
include/plateau/polygon_mesh
wrappers/csharp/LibPLATEAU.NET/CSharpPLATEAU/PolygonMesh Expand file tree Collapse file tree 4 files changed +9
-6
lines changed Original file line number Diff line number Diff line change @@ -16,7 +16,7 @@ namespace plateau::polygonMesh {
1616 * TileExtractorは、複数のCityModelからメッシュを抽出し、指定された範囲(extents)に基づいて結合メッシュを抽出するクラスです。
1717 *
1818 */
19- class LIBPLATEAU_EXPORT TileExtractor : MeshExtractor {
19+ class LIBPLATEAU_EXPORT TileExtractor : public MeshExtractor {
2020 public:
2121
2222 /* *
Original file line number Diff line number Diff line change @@ -10,16 +10,18 @@ extern "C"{
1010
1111 LIBPLATEAU_C_EXPORT APIResult LIBPLATEAU_C_API plateau_tile_extractor_extract_with_combine (
1212 const CityModelHandle** const city_model_handles,
13- const size_t city_model_size,
13+ const int city_model_size,
1414 const MeshExtractOptions options,
1515 const std::vector<plateau::geometry::Extent>* extents,
1616 Model* const out_model) {
1717 API_TRY{
1818
1919 CityModelVector city_models = std::make_shared<std::vector<std::weak_ptr<const citygml::CityModel>>>();
20- for (size_t i = 0 ; i < city_model_size; ++i) {
21-
22- const auto & ptr = city_model_handles[i]->getCityModelPtr (); // ここで city_model_handles[i] のポインタを取得
20+ for (int i = 0 ; i < city_model_size; ++i) {
21+ if (!city_model_handles[i]) {
22+ continue ; // nullptr の場合はスキップ
23+ }
24+ const auto & ptr = city_model_handles[i]->getCityModelPtr (); // ここで city_model_handles[i] のポインタを取得
2325 std::weak_ptr<const citygml::CityModel> weak = ptr;
2426 city_models->push_back (weak);
2527 }
Original file line number Diff line number Diff line change @@ -58,7 +58,7 @@ namespace {
5858 packer.process (out_model);
5959 }
6060
61- const auto & gmlPath = city_models->empty () || city_models->front ().expired () ? " " : city_models->front ().lock ()->getGmlPath ();
61+ const auto & gmlPath = (! city_models || city_models ->empty () || city_models->front ().expired () ) ? " " : city_models->front ().lock ()->getGmlPath ();
6262
6363 // 現在の都市モデルが地形であるなら、衛星写真または地図用のUVを付与し、地図タイルをダウンロードします。
6464 auto package = GmlFile (gmlPath).getPackage ();
Original file line number Diff line number Diff line change @@ -228,6 +228,7 @@ public string MapTileURL
228228
229229 public int epsgCode ;
230230
231+ [ MarshalAs ( UnmanagedType . U1 ) ]
231232 public bool highestLodOnly ;
232233
233234 /// <summary> デフォルト値の設定を返します。 </summary>
You can’t perform that action at this time.
0 commit comments