Plik:Electromagnetic wave.svg

Rozmiar pierwotny(Plik SVG, nominalnie 588 × 352 pikseli, rozmiar pliku: 13 KB)

Opis

Opis Electromagnetic wave
Data
Źródło Praca własna
Autor Lennart Kudling
Asymptote version
InfoField
 
Kod źródłowy tego poprawny.
 
Ta grafika wektorowa została stworzona za pomocą Asymptote
Kod źródłowy
InfoField

Asymptote code

import graph3;
import three;
import settings;
outformat="pdf";
settings.render = 0;
settings.prc = false;

usepackage("fourier");
defaultpen(font("T1","fut\textfamilyextension","m","n"));


size(300, 300);

// Set the camera.
currentprojection=perspective(16,-8,4);


void drawArrowX()
{
  real x0 = 12.8;
  real halfWidth = 0.02;
  real lineLength = 0.5;
  real arrowHalfWidth = 0.10;
  real arrowLength = 0.2;
  
  draw(
       (x0,-halfWidth,0)
    -- (x0 + lineLength,-halfWidth,0)
    -- (x0 + lineLength,-halfWidth - arrowHalfWidth,0)
    -- (x0 + lineLength + arrowLength,0,0)
    -- (x0 + lineLength,halfWidth + arrowHalfWidth,0)
    -- (x0 + lineLength,halfWidth,0)
    -- (x0,halfWidth,0)
    -- cycle );
}

void drawArrowY(real x, real v)
{
  real arrowHalfWidth = 0.07;
  real arrowLength = 0.2;
  
  real absV = abs(v);
  real dir = v / absV;
  real newV = dir * (absV - arrowLength);
  
  draw( (x, 0, 0) -- (x, newV, 0));
  
  draw(
       ( x - arrowHalfWidth, newV, 0)
    -- ( x, v, 0)
    -- ( x + arrowHalfWidth, newV, 0)
    -- cycle );
}

void drawArrowZ(real x, real v)
{
  real arrowHalfWidth = 0.07;
  real arrowLength = 0.2;
  
  real absV = abs(v);
  real dir = v / absV;
  real newV = dir * (absV - arrowLength);
  
  draw( (x, 0, 0) -- (x, 0, newV));
  
  draw(
       ( x - arrowHalfWidth, 0, newV)
    -- ( x, 0, v)
    -- ( x + arrowHalfWidth, 0, newV)
    -- cycle );
}

void drawSineArrowsY(int i)
{
  real x;
  real z;
  
  x = pi * i + pi * 0.1;
  z = -2 * sin(x);
  drawArrowY(x, z);
  x = pi * i + pi * 0.3;
  z = -2 * sin(x);
  drawArrowY(x, z);
  x = pi * i + pi * 0.5;
  z = -2 * sin(x);
  drawArrowY(x, z);
  x = pi * i + pi * 0.7;
  z = -2 * sin(x);
  drawArrowY(x, z);
  x = pi * i + pi * 0.9;
  z = -2 * sin(x);
  drawArrowY(x, z);
}

void drawSineArrowsZ(int i)
{
  real x;
  real z;
  
  x = pi * i + pi * 0.1;
  z = 2 * sin(x);
  drawArrowZ(x, z);
  x = pi * i + pi * 0.3;
  z = 2 * sin(x);
  drawArrowZ(x, z);
  x = pi * i + pi * 0.5;
  z = 2 * sin(x);
  drawArrowZ(x, z);
  x = pi * i + pi * 0.7;
  z = 2 * sin(x);
  drawArrowZ(x, z);
  x = pi * i + pi * 0.9;
  z = 2 * sin(x);
  drawArrowZ(x, z);
}

void drawArrowsY()
{
  drawSineArrowsY(0);
  drawSineArrowsY(1);
  drawSineArrowsY(2);
  drawSineArrowsY(3);
}

void drawArrowsZ()
{
  drawSineArrowsZ(0);
  drawSineArrowsZ(1);
  drawSineArrowsZ(2);
  drawSineArrowsZ(3);
}

void drawLambdaBarX()
{
  real x0 = pi * 0.5;
  real x1 = pi * 2.5;
  real m = 0.5 * (x1 + x0);
  real z = 2.3;
  real halfWidth = 0.07;
  
  draw( (x0, 0.0, z) -- (x1, 0.0, z) );
  draw( (x0, 0.0, z - halfWidth) -- (x0, 0.0, z + halfWidth) );
  draw( (x1, 0.0, z - halfWidth) -- (x1, 0.0, z + halfWidth) );
  
  draw("$\lambda$",(m,0,2.6));
}


real x1(real x) {return x;}
real y1(real x) {return 0.0;}
real z1(real x) {return 2.0 * sin(x);}

real x2(real x) {return x;}
real y2(real x) {return -2.0 * sin(x);}
real z2(real x) {return 0.0;}


// Draw the arrows.
drawArrowX();
drawArrowsY();
drawArrowsZ();

// Draw the sines.
draw(graph(x1,y1,z1,0.0,4pi));
draw(graph(x2,y2,z2,0.0,4pi));

// Draw the wave length meter.
drawLambdaBarX();

draw("$\vec E$",(10,0,-2));
draw("$\vec B$",(12,0,1.5));
Adobe version
InfoField
 
Kod źródłowy tego poprawny.
 
Ta grafika wektorowa została stworzona za pomocą Adobe Illustrator


Licencja

Ja, właściciel praw autorskich do tego dzieła, udostępniam je na poniższych licencjach
w:pl:Licencje Creative Commons
uznanie autorstwa na tych samych warunkach
Wolno:
  • dzielić się – kopiować, rozpowszechniać, odtwarzać i wykonywać utwór
  • modyfikować – tworzyć utwory zależne
Na następujących warunkach:
  • uznanie autorstwa – musisz określić autorstwo utworu, podać link do licencji, a także wskazać czy utwór został zmieniony. Możesz to zrobić w każdy rozsądny sposób, o ile nie będzie to sugerować, że licencjodawca popiera Ciebie lub Twoje użycie utworu.
  • na tych samych warunkach – Jeśli zmienia się lub przekształca niniejszy utwór, lub tworzy inny na jego podstawie, można rozpowszechniać powstały w ten sposób nowy utwór tylko na podstawie tej samej lub podobnej licencji.
GNU head Udziela się zgody na kopiowanie, rozpowszechnianie oraz modyfikowanie tego dokumentu zgodnie z warunkami GNU Licencji Wolnej Dokumentacji, w wersji 1.2 lub nowszej opublikowanej przez Free Software Foundation; bez niezmiennych sekcji, bez treści umieszczonych na frontowej lub tylnej stronie okładki. Kopia licencji załączona jest w sekcji zatytułowanej GNU Licencja Wolnej Dokumentacji.
Możesz wybrać, którą licencję chcesz zastosować.

Podpisy

Dodaj jednolinijkowe objaśnienie tego, co ten plik pokazuje

Obiekty przedstawione na tym zdjęciu

przedstawia

Historia pliku

Kliknij na datę/czas, aby zobaczyć, jak plik wyglądał w tym czasie.

Data i czasMiniaturaWymiaryUżytkownikOpis
aktualny20:34, 24 maj 2010Miniatura wersji z 20:34, 24 maj 2010588 × 352 (13 KB)LennyWikipedia~commonswiki{{Information |Description= |Source={{own}} |Date= |Author= Lenny222 |Permission= |other_versions= }}

Poniższa strona korzysta z tego pliku:

Globalne wykorzystanie pliku

Ten plik jest wykorzystywany także w innych projektach wiki: