[SVG] Transformaties

Pagina: 1
Acties:

  • GREENSKiN
  • Registratie: November 1999
  • Laatst online: 20-07 09:56
Kan iemand mij vertellen waarom dit mis gaat?

In m'n SVG bestand (hieronder) wordt een figuur gedefinieert, en eronder hergebruikt. Het komt alleen op de verkeerde positie te staan (via translate transformatie). De paarse cirkel geeft aan waar het figuur gepositioneerd zou moeten worden.

Ik gebruik de Adobe SVG Viewer onder Opera.

Afbeeldingslocatie: http://greenskin.net/zut/trans.gif

XML:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
<?xml version="1.0" encoding="ISO-8859-1" standalone="no"?>
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 20010904//EN"
    "http://www.w3.org/TR/2001/REC-SVG-20010904/DTD/svg10.dtd" [
    <!ATTLIST svg
              xmlns:a3 CDATA #IMPLIED
              a3:scriptImplementation CDATA #IMPLIED>
    <!ATTLIST script
              a3:scriptImplementation CDATA #IMPLIED>
]>
<svg
     xmlns="http://www.w3.org/2000/svg"
     xmlns:xlink="http://www.w3.org/1999/xlink"
     xmlns:a3="http://ns.adobe.com/AdobeSVGViewerExtensions/3.0/"
     a3:scriptImplementation="Adobe">
     
    <defs>
        <g id="figuur">
            <rect x="0mm" y="0mm" width="1mm" height="1mm" fill="yellow" stroke-width="0.05" stroke="purple"/>
            <ellipse cx="0.5mm" cy="0.5mm" rx="0.25mm" ry="0.25mm" fill="green" stroke-width="0.05" stroke="orange"/>
        </g>
    </defs>
    
    <line x1="0mm" y1="0mm" x2="10000mm" y2="0mm"/>
    <line x1="0mm" y1="0mm" x2="0mm" y2="10000mm"/>
    
    <g transform="scale(0.02, 0.02)">
        <ellipse cx="5900mm" cy="3400mm" rx="50mm" ry="50mm" fill="purple" stroke="orange"/>
        <use xlink:href="#figuur" transform="translate(5900mm, 3400mm) scale(100, 100)" x="0mm" y="0mm"/>
    </g>
</svg>

Verwijderd

gezien de complexiteit en onbekendheid van dit onderwerp, denk ik dat je meer kans hebt op antwoord bij Programming & Webscripting (Programming & Webscripting)

[ Voor 4% gewijzigd door Verwijderd op 17-02-2003 15:46 ]


  • Pelle
  • Registratie: Januari 2001
  • Laatst online: 23-08 09:52

Pelle

🚴‍♂️

Gezien het feit dat dit clientside is en hier modjes rondlopen die zelf wel weten of iets in W&G of in P&W hoort, blijft dit topic hier gewoon lekker staan.

  • GrimaceODespair
  • Registratie: December 2002
  • Laatst online: 17:18

GrimaceODespair

eens een tettenman, altijd ...

Zo op het eerste zicht lijkt het alsof x en y verwisseld zijn en de assen omgedraaid... Op de paarse doe je ook geen translatie waardoor volgens mij het middelpunt tov de rotatie fixed blijft, terwijl je bij dat ander object wel al een translatie achter de rug hebt (zodat rotatiecentrum verplaatst is). Probeer anders es eerst een rotatie en dan een translatie.

[ Voor 104% gewijzigd door GrimaceODespair op 17-02-2003 17:05 ]

Wij onderbreken deze thread voor reclame:
http://kalders.be


  • HunterPro
  • Registratie: Juni 2001
  • Niet online
Verwijderd schreef op 17 February 2003 @ 15:45:
gezien de complexiteit en onbekendheid van dit onderwerp, denk ik dat je meer kans hebt op antwoord bij Programming & Webscripting (Programming & Webscripting)
1) dit is behoorlijk clientside; W&G is je vriendje.
2) * HunterPro roept Cheatah :P (die heeft hier vaker mee gespeeld :))

  • André
  • Registratie: Maart 2002
  • Laatst online: 10:51

André

Analytics dude

Ik weet zo niet waar het mis gaat maar misschien kun je iets vinden op deze site:
http://home.deds.nl/~svg/
Daar heb ik bijna al mijn svg kennis vandaan. En op mijn eigen (zie huisje) site kun je wat simpel gepruts met svg zien.

  • RM-rf
  • Registratie: September 2000
  • Laatst online: 20:30

RM-rf

1 2 3 4 5 7 6 8 9

wat vermoedelijk een probleem oplevert is dat translate geen maateenheden accepteert, maar enkel een numerieke aanpassing aanhoud van de bestaande maten en de maateenheid van de viewbox inhoudt:
als je alle 'mm'-definities weghaalt lijkt hij wel te kloppen.
mogelijk kan het helpen door de maten van viewbox in mm te definieren, zodra je de svg-file direct in je browser weergeeft lijkt hij te defaulten naar pixels en past translate de waarde in pixels aan

Intelligente mensen zoeken in tijden van crisis naar oplossingen, Idioten zoeken dan schuldigen


  • Woudloper
  • Registratie: November 2001
  • Niet online

Woudloper

« - _ - »

Yogho schreef op 17 February 2003 @ 20:48:
Ik weet zo niet waar het mis gaat maar misschien kun je iets vinden op deze site:
http://home.deds.nl/~svg/
Daar heb ik bijna al mijn svg kennis vandaan. En op mijn eigen (zie huisje) site kun je wat simpel gepruts met svg zien.
Leuk :) Daar heb ik ook al mijn kennis vandaan gehaald... Overigens heb ik ook erg veel gehad aan deze site:

http://www.kevlindev.com/index.htm

Hier staat onder tutorials ook de nodige informatie....

  • GREENSKiN
  • Registratie: November 1999
  • Laatst online: 20-07 09:56
Ik ben erachter gekomen dat de waarden van de translatie van het geel/groene figuurtje met ongeveer 3,8 vermenigvuldigd moeten worden. En wat blijkt, dat is precies de hoeveelheid pixel (user units) die in één millimeter gaan. Translate met millimeter waardes erin verbeterd de situatie niet. Het lijkt wel alsof de transformaties enkel met user units uitgevoerd kunnen worden... :/

Weet iemand trouwens hoe je path data kan invoeren in millimeters ipv user units?

(RM-rf was me voor, ik was vergeten te posten, ik ga het iniedergeval proberen, bedankt!)

[ Voor 10% gewijzigd door GREENSKiN op 17-02-2003 22:11 ]


  • Woudloper
  • Registratie: November 2001
  • Niet online

Woudloper

« - _ - »

GREENSKiN schreef op 17 februari 2003 @ 22:09:
Weet iemand trouwens hoe je path data kan invoeren in millimeters ipv user units?
Hmm :? als je nou gewoon mm gebruikt voor milimeters moet dat toch gewoon werken?? Wat je ook kan doen is even zoeken naar "SVG Path en Milimeter" bij Google en dan moet je naar mijn idee genoeg voorbeelden kunnen vinden :P
edit:
Toch eens sneller leren tikken en niet teveel dingen (lees: website's bekijken) tegelijkertijd....

[ Voor 14% gewijzigd door Woudloper op 17-02-2003 22:16 ]

Pagina: 1