Image:Motherboards form factors.svg

From Wikipedia, the free encyclopedia

Motherboards_form_factors.svg (SVG file, nominally 1019 × 850 pixels, file size: 23 KB)

Wikimedia Commons logo This is a file from the Wikimedia Commons. The description on its description page there is shown below.
Commons is a freely licensed media file repository. You can help.

[edit] Summary

Description

A comparison of motherboards' popular form factors (SVG version)

Source

Own work

Date

2007-01-14

Author

GreyCat

Permission
(Reusing this image)

GFDL

Other versions Should replace older PNG versions (Image:Formfactors.png)

[edit] Script

The following Ruby script was used to generate this image. If you'd want to add more form factors, please add it here and re-generate this image.

#!/usr/bin/env ruby

# Generate motherboard form-factors comparison picture in SVG
# (C) Mikhail Yakshin AKA GreyCat, 2007
# License: GPL

WIDTH=450
HEIGHT=375
START_X=5
START_Y=5
MARK_LENGTH=3
ARROW_SIZE=10
MARK_STEP=50

# Sizes to show in comparison picture (in mm)
# w - width
# h - height
# ty - if present, text will be shifted by that amount on y coordinate
RECTS = [
        { :name => 'WTX',        :w => 425, :h => 356 },
        { :name => 'SSI EEB 3.5' :w => 305, :h => 330 },
        { :name => 'BTX',        :w => 325, :h => 267 },
        { :name => 'SSI CEB'     :w => 305, :h => 267 },
        { :name => 'MicroBTX',   :w => 264, :h => 267 },
        { :name => 'NanoBTX',    :w => 224, :h => 267, :ty => 9 },
        { :name => 'PicoBTX',    :w => 203, :h => 267 },
        { :name => 'ATX',        :w => 305, :h => 244 },
        { :name => 'E-ATX',      :w => 305, :h => 330 }, 
        { :name => 'MicroATX',   :w => 244, :h => 244 },
        { :name => 'DTX',        :w => 200, :h => 244 },
        { :name => 'FlexATX',    :w => 229, :h => 191 },
        { :name => 'MiniDTX',    :w => 200, :h => 170 },
        { :name => 'EBX',        :w => 203, :h => 147 },
        { :name => 'MiniITX',    :w => 170, :h => 170 },
        { :name => 'NanoITX',    :w => 140, :h => 140 },
        { :name => 'EPIC',       :w => 165, :h => 115 },
        { :name => 'ETX/XTX',    :w => 95,  :h => 114 },
        { :name => 'PC/104',     :w => 95,  :h => 90  },
        { :name => 'PicoITX',    :w => 100, :h => 72  },
       
        { :name => 'DIN A3',    :w => 420, :h => 297, :paper => true },
        { :name => 'DIN A4',    :w => 297, :h => 210, :paper => true },
        { :name => 'DIN A5',    :w => 210, :h => 148, :paper => true, :ty => 9 },
]

# Header
puts <<EOF
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<svg
   xmlns:dc="http://purl.org/dc/elements/1.1/"
   xmlns:cc="http://web.resource.org/cc/"
   xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
   xmlns:svg="http://www.w3.org/2000/svg"
   xmlns="http://www.w3.org/2000/svg"
   width="#{WIDTH}"
   height="#{HEIGHT}"
   id="svg2"
   version="1.0">
  <defs
     id="defs4" />
  <metadata
     id="metadata7">
    <rdf:RDF>
      <cc:Work
         rdf:about="">
        <dc:format>image/svg+xml</dc:format>
        <dc:type
           rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
      </cc:Work>
    </rdf:RDF>
  </metadata>
  <linearGradient id="mb_gradient" gradientUnits="objectBoundingBox" x1="0" y1="0" x2="1" y2="1">
    <stop style="stop-color:white;" offset="0.8"/>
    <stop style="stop-color:#78a3d1;" offset="1"/>
  </linearGradient>
EOF

# Rectangles
RECTS.each { |b|
        board_id = b[:name].downcase.gsub(/\//, '-')
        ty = b[:h] + START_Y - 1
        ty += b[:ty] if b[:ty]
        if b[:paper]
                puts "  <rect style=\"opacity:1;fill:none;stroke:#b50e70;stroke-width:0.6;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:7.2,7.2;stroke-opacity:1;stroke-dashoffset:0\""
        else
                puts "  <rect style=\"opacity:1;fill:url(#mb_gradient);fill-opacity:0.5;stroke:black;stroke-width:0.5;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1\""
        end
        puts <<EOF
     id="#{board_id}"
     width="#{b[:w]}"
     height="#{b[:h]}"
     x="#{START_X}"
     y="#{START_Y}" />
  <text
     xml:space="preserve"
     style="font-size:6px;text-align:end;text-anchor:end;font-family:sans-serif"
     x="#{b[:w] + START_X - 1}"
     y="#{ty}"
     id="#{board_id}_text">#{b[:name]}</text>
EOF
}

# Axis
puts <<EOF
  <path
     style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:black;stroke-width:1.4px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
     d="M 0,#{START_Y} L #{WIDTH},#{START_Y}"
     id="x-axis" />
  <path
     style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:black;stroke-width:1.4px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
     d="M #{START_X},0 L #{START_X},#{HEIGHT}"
     id="y-axis" />
EOF

# X-axis marks
1.upto(((WIDTH - START_X) / MARK_STEP).to_i) { |i|
        value = i * MARK_STEP
        puts <<EOF
  <path
     style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:black;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
     d="M #{START_X + value},#{START_Y - MARK_LENGTH} L #{START_X + value},#{START_Y + MARK_LENGTH}"
     id="x-mark#{i}" />
    <text
       style="font-size:8px;font-family:sans-serif;text-anchor:middle"
       x="#{START_X + value}"
       y="#{START_Y + 2.5 + 8}"
       id="x-mark#{i}-text">#{value}</text>
EOF
}

# Y-axis marks
1.upto(((HEIGHT - START_Y) / MARK_STEP).to_i) { |i|
        value = i * 50
        puts <<EOF
  <path
     style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:black;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
     d="M #{START_X - MARK_LENGTH},#{START_Y + value}, L #{START_X + MARK_LENGTH},#{START_Y + value}"
     id="y-mark#{i}" />
    <text
       style="font-size:8px;font-family:sans-serif"
       x="#{START_X + 2.5}"
       y="#{START_Y + value + 2.5}"
       id="y-mark#{i}-text">#{value}</text>
EOF
}

# Arrows
puts <<EOF
    <path
       style="fill:black;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
       d="M #{WIDTH},#{START_Y} L #{WIDTH - ARROW_SIZE},#{START_Y - MARK_LENGTH} L #{WIDTH - ARROW_SIZE},#{START_Y + MARK_LENGTH} z "
       id="x-arrow" />
    <path
       style="fill:black;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
       d="M #{START_X},#{HEIGHT}, L #{START_X - MARK_LENGTH},#{HEIGHT - ARROW_SIZE} L #{START_X + MARK_LENGTH},#{HEIGHT - ARROW_SIZE} z "
       id="y-arrow" />
</svg>
EOF

[edit] Licensing

I, the copyright holder of this work, hereby publish it under the following licenses:
GNU head Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation license, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled "GNU Free Documentation license".

Aragonés | العربية | Asturianu | Български | বাংলা | ইমার ঠার/বিষ্ণুপ্রিয়া মণিপুরী | Brezhoneg | Bosanski | Català | Cebuano | Česky | Dansk | Deutsch | Ελληνικά | English | Esperanto | Español | Eesti | Euskara | فارسی | Suomi | Français | Gaeilge | Galego | עברית | Hrvatski | Magyar | Bahasa Indonesia | Ido | Íslenska | Italiano | 日本語 | ქართული | ភាសាខ្មែរ | 한국어 | Kurdî / كوردی | Latina | Lëtzebuergesch | Lietuvių | Bahasa Melayu | Nnapulitano | Nederlands | ‪Norsk (nynorsk)‬ | ‪Norsk (bokmål)‬ | Occitan | Polski | Português | Română | Русский | Slovenčina | Slovenščina | Shqip | Српски / Srpski | Svenska | తెలుగు | ไทย | Türkçe | Українська | اردو | Tiếng Việt | Volapük | Yorùbá | ‪中文(中国大陆)‬ | ‪中文(台灣)‬ | +/-

Some rights reserved
Creative Commons Attribution iconCreative Commons Share Alike icon
This file is licensed under the Creative Commons Attribution ShareAlike license versions 2.5, 2.0, and 1.0

العربية | Български | Català | Česky | Dansk | Deutsch | English | Español | Euskara | فارسی | Français | עברית | Italiano | 日本語 | 한국어 | Lietuvių | Nederlands | Polski | Português | Русский | Svenska | தமிழ் | Türkçe | 中文 | 中文 | +/-

You may select the license of your choice.

File history

Click on a date/time to view the file as it appeared at that time.

Date/TimeDimensionsUserComment
current16:42, 11 October 20071,019×850 (23 KB)Nyks (Bigger standard-size)
20:24, 14 January 2007450×375 (15 KB)GreyCat ({{Information |Description=A comparison of motherboards' popular form factors (SVG version) |Source=Own work |Date=2007-01-14 |Author=User:GreyCat |Permission=GFDL |other_versions=Should replace older PNG versions (Image:Formfactors.png) }} )
The following pages on the English Wikipedia link to this file (pages on other projects are not listed):