Skip to main content
Glama

Minecraft Bedrock MCP Server

by Mming-Lab
line-calculator.ts1.42 kB
/** * 線分座標計算ライブラリ * 線分構造の座標計算に特化した純粋関数(3Dブレゼンハムアルゴリズム) */ import { Position } from '../block-optimizer'; /** * 線分座標を計算(3Dブレゼンハムアルゴリズム) * @param start 線分の開始座標 * @param end 線分の終了座標 * @returns 線分を構成する座標配列 */ export function calculateLinePositions( start: Position, end: Position ): Position[] { const positions: Position[] = []; const dx = Math.abs(end.x - start.x); const dy = Math.abs(end.y - start.y); const dz = Math.abs(end.z - start.z); const sx = start.x < end.x ? 1 : -1; const sy = start.y < end.y ? 1 : -1; const sz = start.z < end.z ? 1 : -1; let errXY = dx - dy; let errXZ = dx - dz; let errYZ = dy - dz; let x = start.x; let y = start.y; let z = start.z; while (true) { positions.push({ x, y, z }); if (x === end.x && y === end.y && z === end.z) break; const e2XY = 2 * errXY; const e2XZ = 2 * errXZ; const e2YZ = 2 * errYZ; if (e2XY > -dy && e2XZ > -dz) { errXY -= dy; errXZ -= dz; x += sx; } if (e2XY < dx && e2YZ > -dz) { errXY += dx; errYZ -= dz; y += sy; } if (e2XZ < dx && e2YZ < dy) { errXZ += dx; errYZ += dy; z += sz; } } return positions; }

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/Mming-Lab/minecraft-bedrock-mcp-server'

If you have feedback or need assistance with the MCP directory API, please join our Discord server