JAVA版_shatter world limits_minescript_QGIS_GDALに至る苦難

 

■202508

動いたが,いろんな MOD を入れてみたいので JAVA 版に挑戦

川岸町 の windows クライアント

一旦 JAVA 削除.Forge 削除

JAVA 21
forge

minecraft java
swl が 1.21.無印が最新なので forge も揃えたらok 1.21.8 のforgeはNG

ここまで installed

 


■20250831

minecraft 1.20.1 に downversion
....起動構成で新規を選択して,作れる

Forge も 1.20.1 に
ForgeのサイトからそれをDownloadして .jar をたたいて install
起動構成に現れるので,これをたたいて起動すると MOD ボタンが現れている

MOD で確認できるもののなかに,shatter world limits から download した
swl-0.2.1g-mixin-forge-1.20.1.jar
が入っている

minescript-fabric-1.20.1-4.0.jar をゲットして MOD フォルダへ

minescript は Fabric 用...

□また全で削除して,Fabricでやってみる..一部繰り返し

minecraft 1.21 に downversion したものを使ってみる
....起動構成で新規を選択して,作った

fabric-installer-1.1.0.exe を download して click

minecraft version は 1.21 にした

..うまくいかないので

□また全で削除して,CurseFabricでやってみる..一部繰り返し

これでうまくいった...でもない

Forge/neoForge でSWL
Fabric で MineScript

を使わないとダメみたいだ

 

minecraft 1.19.3 に downversion

forge 1.19.3 installer download and install

shatteredworldlimits-0.2.0-512-forge-1.19.3.jar
minescript-mc1.19.3-forge-mod-3.2.jar

を探してきて入れた.
これだと大丈夫(かも)

C:\Users\Yasushi\AppData\Roaming\.minecraft\minescript\config.txt を書きに書き換える
そうないと[Exited with error code 9009]

# Lines starting with "#" are ignored.

#python="%userprofile%\AppData\Local\Microsoft\WindowsApps\python3.exe"
python="C:\Python39\python.exe"

helloworld.pyなる下記のファィルを作り,C:\Users\Yasushi\AppData\Roaming\.minecraft\minescriptにおく
import minescript
minescript.echo("Hello world!")

で OK

 

Shattered World Lmits で 高度の制限を 1024 にして
minescript が動くようにした

で,

■QGIS

QGISのブラグイン quickDEM4JPは
「プラグイン」-から辿るのではなくて,プロセシングから辿るように変更されたようだ

quickDEM4JP を使って,角田山近辺のDEMをtiffに変換.さらに GDAL を使って 1m 精度に高めた

使おうとしたコードはこちら Pythonを使用して数値標高モデル(DEM)からMinecraftの地形を作成する

=========================================================================
from osgeo import gdal

# 入力ファイルを開く
tiff = gdal.Open("553616_dem.tiff", gdal.GA_ReadOnly)

# 変換パラメーターを設定
dst_size_x = 1
dst_size_y = 1

# 立方体補間(Cubic Convolution) で解像度を変更する
warp_options = gdal.WarpOptions(xRes=dst_size_x, yRes=dst_size_y, resampleAlg=gdal.GRIORA_Cubic)

# ラスターの変換を実行
dst = gdal.Warp("553616_dem_1m.tiff", tiff, options=warp_options)

# ファイルをクローズ
src = None
dst = None

===============================================================================

■GDAL

GDAL導入で混乱した.GDAL混乱経過

QGISに内包された python 3.2 を使うことで結局うまく動いた

内包された GDAL のカレントディレクトリは
---<pythonで>------------------------------------------
>>>import os
>>>print(os.getcwd())
---------------------------------------------------
ディレクトリの変更した
---------------------------------------------------------
>>>os.chdir('C:/Users/Yasushi/SynologyDrive/Minecraft')
-------------------------------------------------------

ここに script やら置いていく

が,出力された 1m 精度にした tiff がおかしい...

====CoPilotが言うには================================================================
ありがとうございます、画像から の結果を確認しました。いくつか重要なポイントが見えてきました:

📊 ファイルの状態まとめ


⚠️ 問題の本質:座標系が「度」単位
GDAL Warp で , を指定すると、「1度ごとのピクセル」になります。これは地球上で約 111km × 111km に相当するため、画像全体が 1ピクセルに縮小されてしまう可能性があります。

✅ 解決策:メートル単位の座標系に変換してから Warp
ステップ①:WGS84 → UTM(または JGD2000)に変換

---こんなコード-------PrepKakudaCorrected.py で保存 EPSGコードが新潟県でハードコードされているので注意---------------
from osgeo import gdal, osr

# 入力ファイルを開く
src_ds = gdal.Open("kakuda.tiff", gdal.GA_ReadOnly)

# UTM ゾーンの設定(例:新潟なら UTM Zone 54N)
srs = osr.SpatialReference()
srs.ImportFromEPSG(32654) # EPSG:32654 = WGS84 / UTM zone 54N

# Warp オプションを設定(1m 解像度)
warp_options = gdal.WarpOptions(
dstSRS=srs.ExportToWkt(),
xRes=1,
yRes=1,
resampleAlg=gdal.GRIORA_Cubic
)

# Warp 実行
dst_ds = gdal.Warp("kakuda_1m_utm.tiff", src_ds, options=warp_options)
dst_ds = None
---------------------------------------------

これで、1メートル解像度の GeoTIFF が得られるはずです。

🧠 補足:EPSG コードの選び方


この変換を行えば、 が「1メートル」に対応するようになります。次はこの GeoTIFF を で切り出したり、DEM → Minecraft の座標変換に進めても OK です。
どこまで自動化したいか、次のステップを一緒に考えましょう。
========================================================================

ということで,また Pythonを使用して数値標高モデル(DEM)からMinecraftの地形を作成する に戻って

今後の予定は

xyzにして,それをもとにして setblock していく