Fetstil Fetstil Kursiv Understrykning linje färgläggning tabellverk Punktlista Nummerlista Vänster Centrerat högerställt Utfyllt Länk Bild htmlmode
  • Forum & Blog
    • Forum - översikt
      • .Net
        • asp.net generellt
        • c#
        • vb.net
        • f#
        • silverlight
        • microsoft surface
        • visual studio .net
      • databaser
        • sql-server
        • databaser
        • access
        • mysql
      • mjukvara klient
        • datorer och komponenter
        • nätverk, lan/wan
        • operativsystem
        • programvaror
        • säkerhet, inställningar
        • windows server
        • allmänt
        • crystal reports
        • exchange/outlook
        • microsoft office
      • mjukvara server
        • active directory
        • biztalk
        • exchange
        • linux
        • sharepoint
        • webbservers
        • sql server
      • appar (win/mobil)
      • programspråk
        • c++
        • delphi
        • java
        • quick basic
        • visual basic
      • scripting
        • asp 3.0
        • flash actionscript
        • html css
        • javascript
        • php
        • regular expresssion
        • xml
      • spel och grafik
        • DirectX
        • Spel och grafik
      • ledning
        • Arkitektur
        • Systemutveckling
        • krav och test
        • projektledning
        • ledningsfrågor
      • vb-sektioner
        • activeX
        • windows api
        • elektronik
        • internet
        • komponenter
        • nätverk
        • operativsystem
      • övriga forum
        • arbete karriär
        • erbjuda uppdrag och tjänster
        • juridiska frågor
        • köp och sälj
        • matematik och fysik
        • intern information
        • skrivklåda
        • webb-operatörer
    • Posta inlägg i forumet
    • Chatta med andra
  • Konto
    • Medlemssida
    • Byta lösenord
    • Bli bonsumedlem
    • iMail
  • Material
    • Tips & tricks
    • Artiklar
    • Programarkiv
  • JOBB
  • Student
    • Studentlicenser
  • KONTAKT
    • Om pellesoft
    • Grundare
    • Kontakta oss
    • Annonsering
    • Partners
    • Felanmälan
  • Logga in

Hem / Forum översikt / inlägg

Posta nytt inlägg


yt-diagram i 2D eller 3D, möjligt?

Postades av 2003-06-30 14:38:22 - Berne Nielsen, i forum visual basic - allmänt, Tråden har 22 Kommentarer och lästs av 1438 personer

Har någon gjort ett ytdiagram i vb? Skulle behövt redovisa inmätt terräng i ett ytdiagram men vet inte hur man ritar sådana. (finns en enkel men för "stel" variant av ytdiagram i excel)
Vet någon?


Svara

Sv: yt-diagram i 2D eller 3D, möjligt?

Postades av 2003-06-30 15:28:06 - Niklas Jansson

Jo, det är inte så där överdrivet svårt. Beror lite på hur flexibelt du vill ha det.
Om du säger "2D eller 3D", så är 2D naturligtvis väldigt mycket enklare, då vill du väl bara ha olika färger i olika punkter?

I 3D kan man göra det lite olika enkelt (svårt). Vill du kunna rotera, zooma, osv. Vill du ha perspektivkorrekt bild eller inte?

En mycket enkel 3D-variant är att rita upp varje rad "bakifrån" med avseende på z-axeln (använder det vanliga högerorienterade koordinatsystemet, med y uppåt), och använda denna formel:

y_skärm=y+d*z
x_skärm=x+d*z

där d är en fast konstant. Om det räcker kanske du kan fortsätta själv, annars får du säga noggrannare vad du behöver.


Svara

Sv: yt-diagram i 2D eller 3D, möjligt?

Postades av 2003-06-30 17:48:35 - Sven Åke Persson

Mycket intressant,tycker du skall lägga upp ett komigång exempel i Filarean.


Svara

Sv: yt-diagram i 2D eller 3D, möjligt?

Postades av 2003-06-30 22:16:23 - Niklas Jansson

Har gjort en enkel variant och lagt upp den på filarean. Observera att jag bara visar principen, det är mycket som bör fixas.


http://www.pellesoft.se/login/upload/t_view4.asp?tid=597


Svara

Sv: yt-diagram i 2D eller 3D, möjligt?

Postades av 2003-06-30 22:29:54 - Sven Åke Persson

Guld, nu har jag fått en ny hobby.


Svara

Sv: yt-diagram i 2D eller 3D, möjligt?

Postades av 2003-06-30 23:23:20 - Niklas Jansson

Hehe... Märk väl nu att detta är en tilltrixad ful-lösning för att visa principen.
Den är inte perspektivkorrekt, går inte att zooma eller rotera i och är begränsad på alla möjliga sätt.

Sen märkte jag att formeln ovan inte är helt korrekt. Det mest rimliga blir (om man betraktar xy-planet som "marken" i 3D-fallet), att ta x_skärm=x+y, y_skärm=z+y.

Fotnot:
Att sätta en 3D-variabel till en 2D (bl.a.) på detta sätt kallas för projektion.
I det fallet 3D->2D finns tre vanliga. (Eventuellt med ombyte mellan koordinaterna som ovan) Principerna är:

1. Ortogonal projektion; x_skärm=x; y_skärm=y.
Används ofta i t.ex. CAD-program. Man struntar helt enkelt i djupet, och visar det som sitter längst fram.

2. Paralellprojektion: x_skärm=x+z; y_skärm=y+z
Fungerar bra i små bilder, för grafer osv. Det exemplet som gavs ovan

3. Perspektivprojektion: x_skärm=x/z; y_skärm=y/z
Får objekt att se ut som de gör på foton, att de ser ut att vara närmare och närmare varandra om de kommer längre och längre bort i z-riktning.


Svara

Sv: yt-diagram i 2D eller 3D, möjligt?

Postades av 2003-06-30 23:45:18 - Sven Åke Persson

Jag skall inte zooma och rotera,mitt första 3D projekt blir att avbilda
en höjdskillnad (kulle) från en 2D orienteringskarta och använda
ekvidistansen som ingångsparametrar.


Svara

Sv: yt-diagram i 2D eller 3D, möjligt?

Postades av 2003-07-01 08:14:57 - Berne Nielsen

Tack Niklas
Denna hjälp räcker säkert, men.. det där med rotera o zooma lät ju spännande! Är det något du praktiserat och har ett exempel på? Vore väldigt trevligt!
/Berne


Svara

Sv: yt-diagram i 2D eller 3D, möjligt?

Postades av 2003-07-01 08:33:16 - Niklas Jansson

SvenPon:
Ok. Glöm bara inte att vända på y-koordinaterna. Ett bra tips är att göra alla beräkningar i ett koordinatsystem, och sedan omvandla allt till skärmens.

Berne:
Jo, det är inte så svårt, men nu börjar det ta emot att göra det i VB för min del. Har ett enklare exempel på det hemma (e på jobet nu), som också är perspektivkorrekt, men det är inte riktigt fullständigt, och det arbetar bara med en "wireframe", dvs. inga ytor.

Att göra rotationer och inzoomningar i paralell-fallet är jag faktiskt lite osäker på. Det kan röra sig om att bara använda olika värden på d i ekvationen jag skrev först.

Detta är för övrigt en av de "lättare" modellerna att arbeta med 3D i.
Normalt sett kan man inte se det som att man ska "rita det som är längst bak först", utan måste göra ett antal test, eller använda en s.k. z-buffer. Men eftersom det är frågan om rutor som aldrig kan överlappa något som är "framför", så lir det väldigt enkelt i detta fallet.


Svara

Sv: yt-diagram i 2D eller 3D, möjligt?

Postades av 2003-07-01 11:28:30 - Berne Nielsen

ok, det jag ska redovisa är en uppmätt vägyta (uppmätt i ett antal linjer varje meter) och denna visas kanske en 50m i taget. Så beroende på hur ytan lutar kan det bli svårt att se bra i alla lägen om man inte kan rotera den, zoomning är väl mindre viktigt.
Konstigt att det inte finns förberedda 3D-diagram i VB!?
Nåja, har du fler tips eller något hemma som kan hjälpa mig så lägg gärna in det!
/Berne


Svara

Sv: yt-diagram i 2D eller 3D, möjligt?

Postades av 2003-07-01 11:49:27 - Niklas Jansson

Funderar nästan på om din ursprungliga Excel-lösning inte är bättre...
Att skriva 3D själv är nästan alltid onödigt. Man kan ofta med fördel skriva det med Direct3D.

Men vill du ha möjligheter att rotera osv. så kan en Excel-lösning vara rätt käck.


Svara

Sv: yt-diagram i 2D eller 3D, möjligt?

Postades av 2003-07-01 14:32:41 - Berne Nielsen

men finns det något annat än diagramtypen funktionsyta att välja på, i den kan man tex. inte ange olika avstånd mellan inmätta linjer osv. Men det är ju roterbart! Man kan oxå med hjälp av dina formler skapa ett 3D rutnät med diagramserier längs o tvärs ytan i ett linjediagram (eller är det ett punktdiagram med linjer mellan?). En annan nackdel med Excel är att det tar sån tid att skriva ut värdena i cellerna...
/b


Svara

Sv: yt-diagram i 2D eller 3D, möjligt?

Postades av 2003-07-01 14:44:20 - Niklas Jansson

>men finns det något annat än diagramtypen funktionsyta att välja på, i den kan man tex. inte ange olika avstånd mellan inmätta linjer osv.
Ok... ska du ha olika avstånd får du nog faktiskt göra en annan lösning. Fast det är besvärligt, som sagt.

>Men det är ju roterbart!
Det var det som va min poäng... =)

>Man kan oxå med hjälp av dina formler skapa ett 3D rutnät med diagramserier längs o tvärs ytan i ett linjediagram
Är det en fråga eller ett påstående?
Hur som helst; jag tror inte jag förstår helt vad du vill göra, men jag är säker på att det går. Formlerna är ju generella. Problemet är att du när du vill rotera kommer få en hel del krångel. Bistår gärna med hjälp... =)

>(eller är det ett punktdiagram med linjer mellan?).
Tja, ett punktdiagram med linjer emellan och ett linjediagram är det nog bara Excel som skiljer på.
Diagram brukar ju innebära antingen värden hos en funktion eller uppmätta värden, och de kan inte rimligtvis gå "bakåt", så den möjligheten hos Excel har inget med diagram att göra. Att sen inte Excel kan ha godtyckliga mellanrum annat än för punktdiagram har egentligen inte heller något med olika diagram att göra. Så det så. =)

>En annan nackdel med Excel är att det tar sån tid att skriva ut värdena i cellerna...
Skriva in menar du? Det går ju att lösa automatiskt, så det borde ju inte vara nåt problem.

Är det ett privat projekt eller för ett företag?
Hur lång tid har du på dig?


Svara

Sv: yt-diagram i 2D eller 3D, möjligt?

Postades av 2003-07-01 15:02:44 - Niklas Jansson

Har funderat lite på det här nu, och kommit fram till att det kanske inte är så jäkla överdrivet komplicerat med rotationer ändå.

Efter lite sporadiskt spånande (på arbetstid ;) ) har jag kommit fram till att det borde funka att bara sätta in två variabler; alpha & beta.
alpha € (0, PI) U (PI, 2 PI)
beta € [0, PI)

Sen använder man en omvandlig, nånting i stil med:

x_s=x*cos(alpha)+y*sin(alpha)
y_s=z*cos(beta)+y*sin(beta)

Eller kanske en omvandling till kamerakoordinater först...
Ska kika lite mer på det här när jag kommer hem.


Svara

Sv: yt-diagram i 2D eller 3D, möjligt?

Postades av 2003-07-01 15:09:40 - Berne Nielsen

oj det där med:
alpha € (0, PI) U (PI, 2 PI)
beta € [0, PI)
hängde jag inte riktigt med på, men fortsättningen verkar intressant...

>>(eller är det ett punktdiagram med linjer mellan?).
>Tja, ett punktdiagram med linjer emellan och ett linjediagram är det nog bara Excel som skiljer på.
Jo, kom bara inte ihåg vilket diagram som kunde vad för tillfället...

>>En annan nackdel med Excel är att det tar sån tid att skriva ut värdena i cellerna...
>Skriva in menar du? Det går ju att lösa automatiskt, så det borde ju inte vara nåt problem.
ja.. jo visst är det en baggis att göra som kod men det kommer ta ett tag varenda gång man ska uppdatera ett diagram pga. att skrivandet i Excel tar sån tid (en slö process)

>Är det ett privat projekt eller för ett företag?
>Hur lång tid har du på dig?
Halvprivat, sitter och "överarbetar" det för att det är kul...(dvs obetalt) själva 3D:et är inte nödvändigt för resultatet bara för att göra det åskådligt. (och för att det är lite fränt)

/b


Svara

Sv: yt-diagram i 2D eller 3D, möjligt?

Postades av 2003-07-01 15:27:25 - Niklas Jansson

>Halvprivat, sitter och "överarbetar" det för att det är kul...(dvs obetalt) själva 3D:et är inte nödvändigt för resultatet bara för att göra det åskådligt. (och för att det är lite fränt)

Då är det så att säga ingen brådska då!
Det kan jag med glädje hjälpa till lite grann med. Har ju som sagt kommit en bit på vägen här... ska skriva om programmet så det blir lite vettigare.

>oj det där med:
>alpha € (0, PI) U (PI, 2 PI)
>beta € [0, PI)
>hängde jag inte riktigt med på, men fortsättningen verkar intressant...
Det är bara ett tufft (?) matematiskt sätt att säga att

0<alpha<pi eller pi<alpha<2pi
och
0<=beta<pi


Svara

Sv: yt-diagram i 2D eller 3D, möjligt?

Postades av 2003-07-01 15:57:03 - Berne Nielsen

ok! har tydligen förträngt en del matte från skoltiden... :-/
/b


Svara

Sv: yt-diagram i 2D eller 3D, möjligt?

Postades av 2003-07-02 13:24:40 - Emma Magnusson

ja om du har läst statistik har du förträngt det, men det tillhör ju inte grundkurserna
direkt... =)

/Emma


Svara

Sv: yt-diagram i 2D eller 3D, möjligt?

Postades av 2003-07-02 14:46:52 - Niklas Jansson

>ja om du har läst statistik har du förträngt det, men det tillhör ju inte grundkurserna
direkt... =)
Öh?
Statistik va en av mina grundkurser, men hur som helst har väl inget av det här haft med statistik att göra?
Intervall och unioner av dessa används minst lika mycket inom analysen och algeran som statistiken, och notationen är väl mycket vanligare i både analys och algebra.

Och beräkningarna har ju definitivt inget med statistik att göra!

-

Förresten. Har spånat vidare lite. Funderar på om en paralell-projektion är en ortogonalprojektion där man satt in en kamera, som man vrider och flyttar.
Har skrivit funktioner som går en bra bit, men jag har inte testat ut det än. Återkommer.


Svara

Sv: yt-diagram i 2D eller 3D, möjligt?

Postades av 2003-07-03 14:19:26 - Emma Magnusson

Tja... jag läste det bara på en matimatisk tilläggskurs efter a-e-kurserna... men vad
vet jag, mycket som ändras hela tiden.

/Emma


Svara

Sv: yt-diagram i 2D eller 3D, möjligt?

Postades av 2003-07-03 14:55:25 - Niklas Jansson

Ojsan... hehe... jag tolkade det som om det gällde "högskoletiden".
Fick på nåt sätt för mig att det var det som det stod.

Nä, i gymnasiet så fanns det nog ingen statistikkurs, den (försvinnande lilla)matematiska delen av statistiken ingick nog snarare lite sporadiskt i matte-kurserna.


Svara

Sv: yt-diagram i 2D eller 3D, möjligt?

Postades av 2003-07-04 14:40:19 - Berne Nielsen


Jo, tyvärr ingick statistik i grundkurserna (precis som Analys i 1 variabel, 2 variabler, flera variabler och numeriska metoder...) men jag har nog tusan förträngt allihop på nåt sätt... men studielånet har jag iallafall kvar :-D

Hur som helst, har du (Niklas) hunnit testa det där med pi, alpha o beta mfl. eller var det nåt som fanns att läsa om nån stans?

/b


Svara

Sv: yt-diagram i 2D eller 3D, möjligt?

Postades av 2003-07-04 15:13:34 - Niklas Jansson

Jag har inte gjort mer, jag har bara sett att principen verkar fungera. Dessutom blir det jäkligt mycket lättare med vissa detaljer.
Jag la lite för mycket tid på att fundera på hur man roterar runt en punkt lämpligast. Det får bli en senare fråga. Hur som helst - jag slutar snart jobbet och kan försöka ta och titta på det igen.
Problemet är bara att det är fredag - levern skriker efter öl... ;)


Svara

Nyligen

  • 09:09 Vill du köpa medicinska tester?
  • 12:47 Vem beviljar assistansen – kommune
  • 14:17 Någon med erfarenhet av hemstädnin
  • 14:14 Bör man använda sig av en båtförme
  • 14:12 Finns det någon intressant hundblo
  • 14:25 Tips på verktyg för att skapa QR-k
  • 14:23 Tips på verktyg för att skapa QR-k
  • 20:52 Fungerer innskuddsbonuser egentlig

Sidor

  • Hem
  • Bli bonusmedlem
  • Läs artiklar
  • Chatta med andra
  • Sök och erbjud jobb
  • Kontakta oss
  • Studentlicenser
  • Skriv en artikel

Statistik

Antal besökare:
Antal medlemmar:
Antal inlägg:
Online:
På chatten:
4 569 166
27 952
271 704
1 233
0

Kontakta oss

Frågor runt konsultation, rådgivning, uppdrag, rekrytering, annonsering och övriga ärenden. Ring: 0730-88 22 24 | pelle@pellesoft.se

© 1986-2013 PelleSoft AB. Last Build 4.1.7169.18070 (2019-08-18 10:02:21) 4.0.30319.42000
  • Om
  • Kontakta
  • Regler
  • Cookies