Påbegynt det som jeg foreløpig kaller VertexShow. Dette programmet vil bli en enkel 3D editor. Teknologien som brukes er OpenGL via OpenTK. Man skal kunne tegne ved å sette inn 3D punkter og lage triangler mellom disse og man kan sette inn standard objekter som f.eks kuber, sylinder etc. og redigere disse.
Det er et eget vindu for å tegne et 2D polygon som blir triangulert automatisk og så får en dybde slik at det blir til et 3D polygon.
Har nå føyd til en funksjon som halverer et triangel.
Lagt inn funksjon som deler et triangel inn i 4 triangler. Senter (0,0,0) blir nå satt til senter av redigeringsvinduene.
I polygon editoren kan man sette et bakgrunnsfoto for å kunne tegne etter dette.
Lagt til sylinder objekt, valg av radius, sirkelinndeling og høyde.
Man kan nå også plassere ut et angitt antall objekter i en sirkel.
Fått til lokal rotering av objektene man plasserer ut. Objekter blir rotert om tyngdepunktet.
Lagt til skaleringsfunksjon. Lagt tilp en ny tabkontroll som viser egenskaper for det verktøyet man klikker.
Lagt til "Plane" funksjon. Lager et plan med oppgitt bredde og høyde som er inndelt i valgt antall rader og kolonner. Denne funksjonen er fin til å lage landskap med.
Testet compilering av fragmentshader.
Lagt inn import av en Collada (*.dae) fil.
19-10-2014
Fått til en funksjon som eksporterer til collada formatet.
Etter at jeg kunne eksportere til collada formatet har jeg bare brukt Sketchup til å arbeide med modellen av gården Kjærstadbakken. Det var spesielt interessant å tegne opp høydelinjene etter et kart og så bruke funksjonen "From contours" til å lage landskapet.
24.11.2014
Lagd default texture i VertexShow.
25.11.2014
Påbegynt Contours i VertexShow.
11.01.2015
Fått til en extrude funksjon
som regner ut normalen til planet som skal ekstraktes. Det gjør det enkelt å kopiere planet ut til ønsket avstand.
25.01.2015
Fått til en offset funksjon som bruker vektorregning til å beregne offset punktene.
21.02.2015
Føyd til en funksjon som kan flytte et objekt langs den aksen man roterer rundt i rotate funksjonen. Det gjør det enkelt å lage f.eks gjenger.
26.02.2015
Føyd til en funksjon som lager en bue som blir skalert til det rektanglet som brukeren drar opp for yttergrensene til buen.
Har også føyd til en funksjon som finner avstanden mellom to punkter i 3D.
01.03.2015
Forbedret offsetfunksjonen og den fungerer også på et sirkelplan og et bueplan. Har også forbedret opptegningen av objektene.
08.03.2015
Fant kode som gjør at man kan rotere objektene, zoome og panere. Altså en ArcBall kode og den fungerer veldig bra. Så har jeg lagt inn mulighet for bruke eksakte verdier ved konstruksjon av sirkler.
16.03.2015
Legger nå inn kode for finne trianglene man klikker på i 3D vinduet.
25.03.2015
Fått til å beregne skjæringspunktene for et triangel som skjærer gjennom et eller flere andre triangler. Intersections
01.04.2015
Definert en stack for å kunne lagre status på flere nivåer for å kunne lage Undo funksjon.
13.04.2015
Rettet vertex rekkefølgen i trianglene i sirkelplanet.
17.04.2015
Kjøpt ny pc HP Paviljon 500-312no.
Installerte AgetoageSqlite og VertexShow uten problemer. Jeg instalerte så Visual Studio Express 2008 fra en virtual stasjon som jeg opprettet fra en ISO fil av filene. Kopierte så kildefilene for Agetoage og VertexShow til ny pc og kunne kompilere programmene uten problem.
11.05.2015
Lagt til opsjon for å bruke "Gravity" i 3D vinduet ved bruk av Arcball. Dette gjør at Y-aksen holdes loddrett under rotasjonene.
26.05.2015
Føyd til u og v komponenter til Vertex og ved å sette disse til sin og cos av x og y får man et pent sammenhengende texture rundt globen f.eks. Forandret dette til å bruke normalen.
31.05.2015
Lagd det slik at det blir "riktig" texturemapping når man lager rektangler, plan eller polygoner.
Men må nok da utvide Save funksjonen slik at UV verdiene blir lagret også.
01.06.2015
Nå blir UV verdiene også lagret.
Har også fått til riktig UV beregning i alle vinduene.
03.06.2015
Revidert funksjonen som lager et plan. Den lager nå diagonaler ut til hjørnene.
04.06.2015
Laget en parabel funksjon som finner y for en x verdi og man kan så plotte punket inn om man ønsker.
08.06.2015
Laget et eget vindu for parametre etc. for parabel funksjonen og man kan velge hvilket plan den skal tegnes opp i (x,y - z, y eller x,z)
09.06.2015
Rettet litt på parabel funksjonen.
13.06.2015
Lagt til en Catmull Mul spline funksjon og en ny funksjon for parabel a(x-h)+k som gjør det enkelt å flytte parabelen. Man kan nå også lage offset fra et valgt antall punkter. En funksjon for å velge to utvalg av punkter for å triangulere mellom disse er også føyd til.
En funksjon som lager en sirkel fra tre punkter er også lagt til.
15.06.2015
Lagt til avkryssingsbokser for om man ønsker at nye punkter skal være "valgt" når man lager nye vertexer for hånd eller ved parabelfunksjonene.
16.06.2015
Lagt til en funksjon som velger alle punkter i de trianglene som er valgt.
21.06.2015
Lagt til funksjon som kan rotere objekter rundt en akse som brukeren definerer med å velge to vertekser. Et par funksjoner for å la noen valgte triangler få sine egne vertekser er også føyd til.
Så har jeg også utviklet en funksjon som triangulerer to sett med punkter TriangTwoPaths som gjør det enkelt å tegne et 3D landskap etter høydelinjer på et kart som legges som bakgrunnsbilde..
02.08.2015
Lagd funksjon som finner kantene (edges) i en mest.
Meget viktig funksjon å ha.
04.08.2015
Utvidet med funksjon som finner borders også.
06.08.2015
Nå er intersections så bra at alle nødvendige punkter blir funnet.
Neste skritt blir å triangulere trianglene på nytt med intersections punktene.
15.08.2015
Lagt inn ny Deleanau triangulering funksjon som triangulerer et sett av punkter som kan være helt vilkårlig lagt inn.
17.08.2015
Lagt inn Vertex Info som viser data for verticene til et utvalg av triangler.
20.08.2015
Lagt inn funksjon som sletter flere triangler som har samme i.
05.10.2015
Utvidet divide funksjonen for å dividere avstanden mellom punkter slik at man kan velge et antall punkter å dele inn i.
Nå kan man også speile punkter horisontalt eller vertikalt og man kan lage en offset for et utvalg av punkter.
20.10.2015
Lagd ny offset som finner alle kantene til de utvalgte triangler og ordner disse i riktig rekkefølge, dermed finnes alle punktene også i riktig rekkefølge. En kant blir definert med et start og sluttpunkt. Neste kant vil da ha startpunkt hvor forrige kant hadde sluttpunkt.
Kantene finnes ved å telle hvor mange triangler som har denne kanten av de valgte triangler (selected).
01.11.2015
Har oppdatert rotate about any axis slik at de orginale punktene beholdes men får beregnet nye verdier.
Aksen man roterer rundt blir vist med en 2 pixel tykk strek.
03.11.2015
Fant bedre kode for å rotere et punkt rundt en egendefinert akse. Denne koden bruker matriseregning og er enkel og grei og uten noe om og men. Fungerer veldig bra.
- Ved å bruke lengde og breddegrader og bruk av trignometri
- Ved å lage et oktahedron og så divdidere alle trianglene et ønsket antall ganger