This commit is contained in:
Eskimue
2026-04-05 14:01:17 +02:00
parent 2689a32ed6
commit 24096a49a1
5 changed files with 153 additions and 27 deletions
+4 -3
View File
@@ -1145,9 +1145,8 @@ async function initJupiterSystem() {
renderer.shadowMap.type = THREE.PCFSoftShadowMap;
scene = new THREE.Scene();
scene.fog = new THREE.FogExp2(0x03050c, 0.00015);
camera = new THREE.PerspectiveCamera(45, 1, 0.1, 1000);
camera = new THREE.PerspectiveCamera(45, 1, 0.1, 2000);
textureLoader = new THREE.TextureLoader();
moonGroups = new Map();
moonShadowCasters = new Map();
@@ -1161,7 +1160,7 @@ async function initJupiterSystem() {
cameraTarget = new THREE.Vector3(0, 0, 0);
rotationEqjToEcl = AstronomyEngine.Rotation_EQJ_ECL();
const ambientLight = new THREE.AmbientLight(0x334466, 0.8);
const ambientLight = new THREE.AmbientLight(0x334466, 0.2);
scene.add(ambientLight);
const hemiLight = new THREE.HemisphereLight(0x445577, 0x111a2e, 0.6);
@@ -1180,6 +1179,8 @@ async function initJupiterSystem() {
sunLight.shadow.camera.bottom = -40;
sunLight.shadow.camera.updateProjectionMatrix();
sunLight.shadow.radius = 0.5;
sunLight.shadow.bias = 0.0008;
sunLight.shadow.normalBias = 0.02;
scene.add(sunLight);
scene.add(sunLight.target); // Pflicht: sonst ignoriert Three.js die Shadow-Camera-Ausrichtung
-1
View File
@@ -1246,7 +1246,6 @@ async function initSolarSystem() {
renderer.shadowMap.type = THREE.PCFSoftShadowMap;
scene = new THREE.Scene();
scene.fog = new THREE.FogExp2(0x03050c, 0.0018);
camera = new THREE.PerspectiveCamera(45, 1, 0.1, 2000);
planetMeshes = new Map();
-21
View File
@@ -717,27 +717,6 @@ function drawArc(){
ctx.clip();
if(!sd.polarNight){
// Unter-Horizont gestrichelt (normal day) - nur Punkte wo alt<0
if(!sd.polarDay){
const sub=[];
for(let i=0;i<=80;i++){
const h=sd.riseUTC-3+i*6/80;
const{altitude,azimuth}=sunAltAz(loc.lat,loc.lon,hourToDate(currentDate,h));
if(altitude<0) sub.push(proj(altitude,azimuth));
else if(sub.length>0) { sub.push(null); } // Unterbrecher
}
// Zeichne mit Unterbrechungen
ctx.beginPath();
let inPath=false;
sub.forEach(p=>{
if(!p){inPath=false;return;}
if(!inPath){ctx.moveTo(p.x,p.y);inPath=true;}
else ctx.lineTo(p.x,p.y);
});
ctx.strokeStyle='rgba(200,168,75,.15)';ctx.lineWidth=1.5*dpr;
ctx.setLineDash([4*dpr,8*dpr]);ctx.stroke();ctx.setLineDash([]);
}
// Äußerer Gluehschein
ctx.beginPath();
drawWrappedPath(ctx,pts,W,sd.polarDay);
+5 -2
View File
@@ -184,9 +184,12 @@ PS
$body = @file_get_contents($url, false, $context);
$statusCode = 0;
$responseHeaders = function_exists('http_get_last_response_headers')
? http_get_last_response_headers()
: ($http_response_header ?? null);
if (isset($http_response_header) && is_array($http_response_header)) {
foreach ($http_response_header as $headerLine) {
if (is_array($responseHeaders)) {
foreach ($responseHeaders as $headerLine) {
if (preg_match('/^HTTP\/\S+\s+(\d{3})\b/', $headerLine, $matches) === 1) {
$statusCode = (int) $matches[1];
break;