Idag blir det ett rent AutoCAD-tips faktiskt, även om vi använder det i Civil 3D.
Jag fick en fråga igår från en kund om hur ritningshanteringen går till i Civil 3d, och tyvärr så måste jag svara att ritningshanteringen i det stora hela går till precis som den gör i AutoCAD.
Ritningshanteringen i AutoCAD är inte svår, den är mest omständlig och kräver att man gör allt i rätt ordning och alltid gör samma sak. Det finns dessutom många sätt att hantera sina ritningar på, som mycket annat i AutoCAD så leder alla vägar till Rom, men det finns många vägar till Rom. (jag rekommenderar med tåg över/genom bergen genom Österrike, men igen, eget inlägg)
Idag diskuterade jag också ritningshantering, speciellt hur man roterar sin modell för ritdeffen och de kommandona jag använde insåg jag snabbt att man kan lägga ihop till ett macro, så det är dagens inlägg: ett macro för att rotera din modell och zooma in i en viewport. Och jag tänkte använda detta för att visa lite hur man kan göra macros generellt- jag har skrivit om detta tidigare, så det blir säkert en liten repetition för en del av er.
Några frågar du kan ställa dig innan du börjar:
Kan jag göra detta till ett macro?
Alla funktioner som lever på kommandoraden är enkla att göra om till macro, så så länge du inte blandar in några dialogboxar så kommer det gå galant.
Är det lönt att göra ett macro?
Om det är en serie av kommandon som du gör upprepade gånger så är det oftast lönt att göra macrot. Både för att spara tid och för att komma ihåg att alltid göra funktionerna i rätt ordning. Angående tids-aspekten så gillar jag XKCDs diagram över tidsvinst: https://xkcd.com/1205/
Hur du börjar:
Gör de funktioner du vill sätta ihop och skriv ner hur du gör. I mitt fall vill jag ställa in ett eget UCS längs en utsnittsruta, vrida vyn till det UCS, ställa tillbaka UCS till World och sist zooma till utsnittsrutan. Jag börjar med att skriva alla kommandon på kommandoraden, och medan jag skriver det på kommandoraden så skriver jag samma saker i ett Notepad/Anteckningar-fönster. Notepad är kung för detta, det minimerar risken för att formattering av text bråkar med dig.
Varje mellanslag/enter skriver jag som ett ;
Varje gång jag behöver klicka något på skärmen skriver jag ett \
Mitt första utkast på macro blev då UCS;\;plan;;ucs;w;zoom \\
Om ni testar det så kommer ni se att det inte fungerar. Den enklaste metoden för att testa sitt macro är att klistra in texten på kommandoraden och se vad som händer. Jag behöver väl inte säga att ni ska se till att spara ritningen och helst inte ha en "riktig" ritning uppe medan ni gör det här? Bra.
För att testa ett macro är det enklast att ta det i steg. Jag började med att få UCS-delen att fungera, tog alltså bara UCS;\; och klistrade in på kommandoraden och ändrade i macrot tills jag fick in alla enter-slag och \ på rätt ställe.
Till slut, efter lite testande, så fick jag detta: ^C^CUCS;\\;plan;;UCS;w;zoom;
Notera att det numera också börjar med ^C^C, det är för att macrot ska avbryta eventuell funktion som är igång innan den startar själva macrot.
För att sedan skapa en knapp så är det CUI-dialogen som gäller, skapa funktion, lägga in macrot, skapa en panel, lägga in knappen på panelen, lägga panelen på en tab, badabing badaboom!
Det är riktigt tillfredställande att få ihop ett riktigt snyggt macro som gör precis det man vill!
Visar inlägg med etikett ucs. Visa alla inlägg
Visar inlägg med etikett ucs. Visa alla inlägg
tisdag 30 april 2019
tisdag 8 maj 2018
Dagens bugg eller I got to move it, move it
Idag blir det bilder! Jag har sällan bilder på den här bloggen, det är bara för att jag är lat och jag har inte brytt mig om att skapa en smidig metod att fixa bilder hit. Men idag blir det alldeles för krångligt att beskriva det jag vill beskriva.
Idag ska vi prata Dagens Bugg: Structure Labels.
En kund kontakta vår support idag med ett problem. Jag avskrev det som bugg, och det är en bugg, men jag testade lite själv för att se om det är en konsekvent bugg och det verkar som att det är det - och därmed kan jag föreslå en lösning.
Problemet är som följer:
Man skapar ledningsnät med brunnar och sätter etiketter på dom. Man vill dra lite i etiketterna och då hamnar leadern fel och då drar man lite i leadern - enligt bilderna nedan.
Sen gör man sin ritning då ser det ut som nedan och man river sitt hår om vad som är fel.
Min slutsats är att Dragged State, och då framförallt att flytta leadern manuellt, ignorerar (eller tolkar fel) att man vrider sitt visningsläge med PLAN-kommandot
Lösningen är att sätta UCSet och PLAN, innan man drar i leadern. Då får man leadern på rätt plats och det kommer se rätt ut i Layouten. Vrider man sedan tillbaka till World i Model-läget så kommer det såklart se fel ut igen - men då fortfarande rätt i Layouten. Snurrigt? Jajamensan! Men sen när är Civil 3D ett logiskt program? Det är väl därför vi gillar det? Inte? Nähä, bara jag då.
Skulle ni testa det här och säger till er själva "men Caroline ljög för mig, de hamnar fortfarande fel?!" så tänk på att skalfaktorn påverkar också detta. Ni måste ha den skalfaktorn i Modelläget som ni ämnar ha på Viewporten innan ni flyttar leadern - annars hamnar den också fel. Bara så ni vet!
onsdag 25 januari 2017
Carolines Checklist för Okända Ritningar
Ett evigt gissel när vi håller på i AutoCAD eller i Civil 3D är alla dessa ritningar. Det är ju sällan som vi lever i en bubbla där vi enbart har att göra med våra egna ritningar. I de allra flesta fall får vi massor av filer från alla möjliga källor som vi måste hantera.
Jag har en checklista som jag brukar gå igenom med filer, dels för att rensa filen så att den är så liten och ordentlig som möjligt, men också för att försäkra mig om att den kommer att hamna på rätt ställe när jag tar in den som block eller som x-ref.
Börja alltid med att öppna filen och börja jobba dig igenom frågorna:
1: Vilken enhet är filen ritad i?
Denna besvaras av tre kontroller: Skriv UNITS på kommandoraden och kontrollera vilken enhet som filen är angiven att vara i. Kontrollera koordinaterna som objekt i filen ligger på. Använd DIST-kommandot för att kontrollera längd på något objekt i filen. Dessa tre värden ska stämma överens. Om något av de inte matchar de andra två, så måste något av de ändras.
Civil-filer har även en UNITS-inställning i Drawing Settings (EDITDRAWINGSETTINGS på kommandoraden) som också behöver kontrolleras.
2:Kan du göra Zoom>Extents?
Gör en Zoom>Extents och se om du enbart zoomar in på de objekt som du ska använda.
Använd LAYON och LAYTHW för att tända och tina alla lager. Gör en Zoom > Extents igen för att se om det dyker upp objekt som tidigare var dolda.
Om du kan, ta bort de objekten som ligger utanför det område som du arbetar i. Om du inte kan, frys alla lager med de objekt som ligger utanför området. Om lagret är fryst så tar inte Zoom>Extents hänsyn till objekten.
3: Är du i UCS - World?
För min del så vill jag alltid vara i UCS-World, men det är inte alla som håller med om det. Det är bra att kolla om det finns något UCS definierat i ritningen, det syns enklast högst upp till höger under Viewcuben - om det står ett namn där eller om det står Undefined så är det ett nytt UCS definierat. För att återgå till UCS-world skriver du UCS på kommandoraden och sedan W för world. Om själva UCSet vrider tillbaka sig (hårkorset och UCS-ikonen blir vridna) så använder man sedan kommandot Plan för att vrida till ritningen så att norr är riktat uppåt.
4: Purge och Audit.
Använd Purge för att ta bort alla AutoCAD styles och lager som inte används. Använd PurgeStyles för att ta bort alla Civil 3D styles som inte används. Båda dessa funktioner körs upprepade gånger tills de inte går att köra igen. Efter PurgeStyles, använd Purge igen för att ta bort eventuella lager som efter PurgeStyles inte används.
Efter Purge och PurgeStyles körs Purge på kommandoraden med -Purge (observera minustecknet) och då tas Regapps, Zero-length geometry, Empty Text objects och Orphaned data bort, en i taget.
Sist körs Audit. Låt Auditen ta sin tid, upp till kvart har jag inga problem att vänta på den.
5: 3D?
Beroende på vad du ska göra med filen så kan det vara en bra ide att kontrollera om alla objekten ligger på 0-nivå eller om det varierar. Den enklaste metoden som tycker är att vrida upp modellen i en färdig vy. På View-fliken kan du välja vilken vy du vill se din fil i, välj t.ex. Höger-vyn. Om allt ligger på 0-nivå så ska allt synas som en rakt streck. Om det inte gör det, om objekten ligger lite överallt då skulle jag börja med att hämta kaffe.
Du kan testa att använda funktionen Flatten för att få ner alla objekt till elevation 0. Ibland har jag tur med den, ibland inte. Du kan använda Move för att flytta objekt till rätt elevation. Du kan också markera alla objekt och sedan använda Properties-Paletten för att ändra Z-position och elevation på objekten.
Jag har en checklista som jag brukar gå igenom med filer, dels för att rensa filen så att den är så liten och ordentlig som möjligt, men också för att försäkra mig om att den kommer att hamna på rätt ställe när jag tar in den som block eller som x-ref.
Börja alltid med att öppna filen och börja jobba dig igenom frågorna:
1: Vilken enhet är filen ritad i?
Denna besvaras av tre kontroller: Skriv UNITS på kommandoraden och kontrollera vilken enhet som filen är angiven att vara i. Kontrollera koordinaterna som objekt i filen ligger på. Använd DIST-kommandot för att kontrollera längd på något objekt i filen. Dessa tre värden ska stämma överens. Om något av de inte matchar de andra två, så måste något av de ändras.
Civil-filer har även en UNITS-inställning i Drawing Settings (EDITDRAWINGSETTINGS på kommandoraden) som också behöver kontrolleras.
2:Kan du göra Zoom>Extents?
Gör en Zoom>Extents och se om du enbart zoomar in på de objekt som du ska använda.
Använd LAYON och LAYTHW för att tända och tina alla lager. Gör en Zoom > Extents igen för att se om det dyker upp objekt som tidigare var dolda.
Om du kan, ta bort de objekten som ligger utanför det område som du arbetar i. Om du inte kan, frys alla lager med de objekt som ligger utanför området. Om lagret är fryst så tar inte Zoom>Extents hänsyn till objekten.
3: Är du i UCS - World?
För min del så vill jag alltid vara i UCS-World, men det är inte alla som håller med om det. Det är bra att kolla om det finns något UCS definierat i ritningen, det syns enklast högst upp till höger under Viewcuben - om det står ett namn där eller om det står Undefined så är det ett nytt UCS definierat. För att återgå till UCS-world skriver du UCS på kommandoraden och sedan W för world. Om själva UCSet vrider tillbaka sig (hårkorset och UCS-ikonen blir vridna) så använder man sedan kommandot Plan för att vrida till ritningen så att norr är riktat uppåt.
4: Purge och Audit.
Använd Purge för att ta bort alla AutoCAD styles och lager som inte används. Använd PurgeStyles för att ta bort alla Civil 3D styles som inte används. Båda dessa funktioner körs upprepade gånger tills de inte går att köra igen. Efter PurgeStyles, använd Purge igen för att ta bort eventuella lager som efter PurgeStyles inte används.
Efter Purge och PurgeStyles körs Purge på kommandoraden med -Purge (observera minustecknet) och då tas Regapps, Zero-length geometry, Empty Text objects och Orphaned data bort, en i taget.
Sist körs Audit. Låt Auditen ta sin tid, upp till kvart har jag inga problem att vänta på den.
5: 3D?
Beroende på vad du ska göra med filen så kan det vara en bra ide att kontrollera om alla objekten ligger på 0-nivå eller om det varierar. Den enklaste metoden som tycker är att vrida upp modellen i en färdig vy. På View-fliken kan du välja vilken vy du vill se din fil i, välj t.ex. Höger-vyn. Om allt ligger på 0-nivå så ska allt synas som en rakt streck. Om det inte gör det, om objekten ligger lite överallt då skulle jag börja med att hämta kaffe.
Du kan testa att använda funktionen Flatten för att få ner alla objekt till elevation 0. Ibland har jag tur med den, ibland inte. Du kan använda Move för att flytta objekt till rätt elevation. Du kan också markera alla objekt och sedan använda Properties-Paletten för att ändra Z-position och elevation på objekten.
Prenumerera på:
Inlägg (Atom)

