Varför är byggkonstruktionerna i LDD så krångliga och ologiska?

Startat av DaRePo, 24 April 2014 kl. 15:53

Föregående ämne - Nästa ämne

DaRePo

Använde för första gången LDD för att bygga Dm3 loket vilket tog ca 40 timmar (mycket att lära när man är nybörjare...)

Tyckte att själva CAD delen i LDD fungerade ganska ok, men blev grymt besviken när jag kom till Building Guide som jag uppfattade i det närmaste som värdelös.

Jag skulle gärna vilja veta vad som styr logiken i Building Guide Mode. Till skillnad från Legos vanligtvis väl upplagda, genomtänkta och pedagogiska konstruktionsguider har LDD's Building Guide en helt obegriplig konstruktionslogik och -sekvens.

I stället för att bygga från grunden börjar man med enskilda konstruktionsdetaljer för att sedan gå över till stommen av objektet där man ofta väljer att börja med lösa bitar som hänger i luften(!) någonstans halvvägs i mitten för att sedan arbeta sig neråt (!) vilket i praktiken innebär att man måste ofta riva upp det som är redan påbörjat. Det värsta exemplet var bärande delar längst ner i chassit som kom sist (!), kanske därför att de hade annan färg (?!).

Själv slutade jag ganska omgående med denna Building Guide och gick tillbaka till View Mode där jag helt enkelt plockade isär loket bit för bit - ett synnerligen tidskrävande sätt att bygga ...

Vad är det som gör att Building Guide blir så krånglig och ologisk?

En annan obehaglig upptäckt jag gjorde var skillnaden mellan LDD och verklighet. Det finns några exempel där bitarna enligt LDD passade ihop (vilket markeras med gröna linjer runt de bitar som byggs ihop) men i verkligheten så gick det inte, eller så blev det betydliga glap. Är programmet verkligen testat hela vägen ut?

pehter aka ibbe

Just därför använder man MLCad och Lpub för sånt  ;D

Jag tror att superkalle skulle vara intresserad av dom exemplen du hittade, han håller på med testning av LDD och rapporterar in felaktigheter.
Instruktioner till en del av mina byggen.   Flickr

mechamike

En orsak till gap är att i LDD är alla bitar exakta och LDD inte tar hänsyn till toleranskedjor.
I mitt SHIP provbyggde jag vissa saker i LDD som led av detta.


?

Eigenbrötler

jag har knappt använt ldd, men jag har byggt efter ldd filer, bla nextuz peterbilt lastbil, i ldd var det tillåtet med en 1x1 round tile på ett visst ställe, som hindrade hjulrotation när man byggde det "på riktigt" där vet jag inte riktigt hur det gick till, var ingen direkt avancerad byggteknik just där, men ändå tillåtet i ldd
Ta en titt i min butik, jag kanske har bitarna du behöver?
 ▶▶▶𝕰𝖎𝖌𝖊𝖓𝖇𝖗𝖔𝖙𝖑𝖊𝖗𝖘◀◀◀

mechamike

Tror det kan bero på att kollisionsanalysvolymen har inte samma volym som den virtuella biten som visuellt presenteras i LDD
?

AndersI

Rimligt i sådana sammanhang är att 'kollisionsvolymerna' (kallade K i resten av posten) är enkla geometriska volymer (sfär, cylinder, rätblock) som går snabbt att testa om de överlappar varandra. Om det är en komplicerad bit, som sticker ut oregelbundet åt flera håll, får man kompromissa mellan exakthet (kombination av många K för att exakt representera biten) och snabbhet (en enda K).

I LDD-fallet tycker jag det är rimligt att snabbhet har högre prioritet än exakthet, men det är ju tekniskt möjligt att ha flera olika bit-bibliotek, för olika ändamål.

Ett annat sätt att förbättra detektionen är att använda enkla (och något för små) K medan man glider runt med en bit i modellen, men sedan använda komplicerade K, för de få bitar som är berörda, när man väl klickar att biten ska placeras. Då påverkas inte prestanda märkbart, men placeringsmöjligheterna ökar. Det är dock ett stort jobb att skapa de komplicerade K som behövs.


När det gäller ursprungsfrågan, så har jag inte provat, men blir det möjligen olika resultat beroende på i vilken vinkel man tittar på modellen? LDD 'vet' ju inte någonting om hur modellen faktiskt kan/ska byggas upp - det finns ingen möjlighet att bestämma ordningen själv (som i LDraw/MLCad/BlockCAD) - utan använder någon sorts algoritm för att visa mer och mer av modellen (avstånd till betraktarens öga kanske?).

Ett (relativt) enkelt tillägg till LDD skulle kunna vara ett reglage för 'höjdsnitt' så att man kunde se ett lager i taget nerifrån och upp (det har mitt LEGO CAD-program BlockCAD).
Region: Nerike och lite ÖstraG (bor i Södermanland)
Mitt urgamla LEGO CAD-program: BlockCAD

Superkalle

Bygginstruktionerna (BI) i LDD genereras map flera faktorer. "Lager-principen" är en av dem, dvs man börjar med de bitar som ligger underst och bygger uppåt i lager. Även "connectivities" , som är de kontakter som finns mellan klossarna (som gör att de "snäpper" mot varandra), styr ordningen. Vad jag vet så påverkar inte kollisionsvolymerna algoritmen; de används bara vid placering av bitarna.

Sidospår: Faktum är dock att det är två tekniker som gör att LDD är såpass lättanvänt jämfört med Ldraw:
1) Kollisionsvolymerna (som gör att man bitarna inte kan "flyta in" i varandra)
2) Kopplingar (regler som gör att bitarna vet hur de kan kopplas ihop och roteras mot andra bitar)
Har för mig Ldraw hade planer om 2) en gång i tiden, men man lade ner det projektet eftersom det bedömdes för arbetsamt. Det var synd, för det hade varit en mycket stor hjälp i att få ut LDraw till "massorna".

Att göra en automatiskt BI i allmänhet är extremt svårt eftersom det är så många fall att förutse. Dessutom krävs alltid erfarenhet och "manuell touch" för att t ex göra "sub-assemblies" och också bestämma hur många delar som kan/skall sättas på i varje steg. Det är bara att bläddra i en vanligt tryckt BI för att se exempel på detta. Att göra BI för en stor modell kan ta flera månader på LEGO och kräver mycket manuellt pill och många testbyggen.

BI-generatorn som finns i LDD gjordes får många år sedan och anpassades för enklare byggen. De lite större/svårare som vi AFOLs gör är långt bortom vad LDD en gång gjordes för. LEGO har internt bättre och mer precisa algoritmer för att göra bygginstruktioner än de som finns i LDD; men de har ännu inte letat sig in i LDD...och jag vet i ärlighetens namn inte när/om de gör det.

Kuriosa: I tidigare versioner av LDD kunde man bl a styra hur många klossar som skulle sättas på i varje steg osv.

Grundregeln att få en bra BI i LDD är i vilket fall att plocka isär sin modell i delar och ta bort SNOT:ade del-montage. Tar man t ex av hjulen från en bil först, så blir det ofta en mycket bättre BI av det som är kvar. Så jag brukar göra så att jag gör lagom klumpar av modellen (typ tar av hjulen) och låter LDD generera det som blir kvar. Sedan tar jag och photoshopar ihop en "slutbild" där jag visar med pilar att hjulen skall sättas på sist. Typ så.

@DaRePo: Om du vill kan du skicka mig LDD-filen, så jag kan jag hjälpa dig att försöka "gruppera" modellen för BI, så kan du sedan se om du tyckte det blev bättre.


DaRePo



Manne

Väcker liv i denna tråd, då det gått något år sen den startades, finns det i denna tid någon vettig möjlighet till att få ut en fungerande instruktion på ett bygge som inte innebär att man bygger i luften om man säger så..

Med vänlig hälsning, Manne
Nybörjare igen som gärna bygger med plast..
Mannesalt, on Flickr

Peter S

Citat från: Manne skrivet 22 Maj 2016 kl. 07:51
Väcker liv i denna tråd, då det gått något år sen den startades, finns det i denna tid någon vettig möjlighet till att få ut en fungerande instruktion på ett bygge som inte innebär att man bygger i luften om man säger så..

Med vänlig hälsning, Manne
Nej det tror jag inte. Jag har för mig att de instruktioner som görs till SweBrick inte använder den funktionen. Man kan istället göra så här: på den färdiga modellen, tar man bort några lämpliga bitar och lägger brevid modellen. Ta en skärmdump. Deleta de förra borttagna bitarna och ta bort några bitar till från modellen. Ny skärmdump. Och så håller man på tills man fått en baklänges instruktion i bilder.

Manne

Förstår principen du förklarar. Finns det några inställningar alls för att få till en bättre automatisk instruktion än som det är från början i Ldd ? , tänkte se om jag kunde få ihop ett hus av dessa filer som fanns här. Inte helt sugen på att göra den principen på nästan 3000 bitar. Om jag fattar rätt så förstår inte ldd vilken ordning den ska börja , men lager från botten o uppåt så borde jag reda ut bygget.

Med vänlig hälsning, Manne
Nybörjare igen som gärna bygger med plast..
Mannesalt, on Flickr

lindyhep

Om det är du själv som skall bygga så kan en väg vara att med ldd framför dig lyfta bort tex alla bitar av en viss typ eller färg och på så sätt se bättre hur du skall bygga det som är kvar. Har för mig att det var så jag gjorde med Åhlenshuset. Jag är dock långt ifrån nån expert på ldd så det finns säkert smartare lösningar.
Jag säger dock som de andra att jag tror inte det finns några inställningsmöjligheter för instruktions-läget.

Superkalle

Det går att få till bra instruktioner i LDD, men man måste själva "manuellt" dela upp modellen" i sina huvudsakliga beståndsdelar. Har förklarat lite av det ovan.

Om det t ex är en bil, så börja med att flytta bort hjulen (fälg + däck). Likaså delar som sitter monterat på en "bracket" så att det går åt sidan (SNOT). Så länge bitarna i LDD modellen är alla "studs up", så fattar byggalgoritment bra. Sedan på slutet så sätter du dit t ex hjul, och tar en sista screenshot/skärmdump. Bygginstruktionen för Norrköpingsspårvagnen (Swebrick-eventet) är gjort ifrån LDD med lite handpåläggning. Tror den finns att ladda ner någonstans.

Sedan finns det ett verktyg för att mer i detalj styra bygginstruktionerna i en LXF-fil. Kommer inte ihåg namnet, men du får leta på Eurobricks. Problemet med detta är dock att om man efteråt går in och editerar i LXF-filen och genererar en ny bygginstruktionen, så "förstör" det den ordning du satt.

Här finns lite smått och gått också om att skapa instruktoner från LDD:
http://www.eurobricks.com/forum/index.php?showtopic=69726&#entry1285149