Qucs-GUI
0.0.19
|
00001 /*************************************************************************** 00002 msstep.cpp - description 00003 ------------------- 00004 begin : Sat Aug 23 2003 00005 copyright : (C) 2003 by Michael Margraf 00006 email : michael.margraf@alumni.tu-berlin.de 00007 ***************************************************************************/ 00008 00009 /*************************************************************************** 00010 * * 00011 * This program is free software; you can redistribute it and/or modify * 00012 * it under the terms of the GNU General Public License as published by * 00013 * the Free Software Foundation; either version 2 of the License, or * 00014 * (at your option) any later version. * 00015 * * 00016 ***************************************************************************/ 00017 00018 #include "msstep.h" 00019 00020 00021 MSstep::MSstep() 00022 { 00023 Description = QObject::tr("microstrip impedance step"); 00024 00025 Lines.append(new Line(-30, 0,-18, 0,QPen(Qt::darkBlue,2))); 00026 Lines.append(new Line( 18, 0, 30, 0,QPen(Qt::darkBlue,2))); 00027 Lines.append(new Line(-18,-12, 0,-12,QPen(Qt::darkBlue,2))); 00028 Lines.append(new Line(-18, 12, 0, 12,QPen(Qt::darkBlue,2))); 00029 Lines.append(new Line(-18,-12,-18, 12,QPen(Qt::darkBlue,2))); 00030 Lines.append(new Line( 0, -7, 18, -7,QPen(Qt::darkBlue,2))); 00031 Lines.append(new Line( 0, 7, 18, 7,QPen(Qt::darkBlue,2))); 00032 Lines.append(new Line( 18, -7, 18, 7,QPen(Qt::darkBlue,2))); 00033 Lines.append(new Line( 0,-12, 0, -7,QPen(Qt::darkBlue,2))); 00034 Lines.append(new Line( 0, 7, 0, 12,QPen(Qt::darkBlue,2))); 00035 00036 Lines.append(new Line(-22, -4,-26, 4,QPen(Qt::darkBlue,2))); 00037 00038 Ports.append(new Port(-30, 0)); 00039 Ports.append(new Port( 30, 0)); 00040 00041 x1 = -30; y1 =-13; 00042 x2 = 30; y2 = 13; 00043 00044 tx = x1+4; 00045 ty = y2+4; 00046 Model = "MSTEP"; 00047 Name = "MS"; 00048 00049 Props.append(new Property("Subst", "Subst1", true, 00050 QObject::tr("substrate"))); 00051 Props.append(new Property("W1", "2 mm", true, 00052 QObject::tr("width 1 of the line"))); 00053 Props.append(new Property("W2", "1 mm", true, 00054 QObject::tr("width 2 of the line"))); 00055 Props.append(new Property("MSModel", "Hammerstad", false, 00056 QObject::tr("quasi-static microstrip model")+ 00057 " [Hammerstad, Wheeler, Schneider]")); 00058 Props.append(new Property("MSDispModel", "Kirschning", false, 00059 QObject::tr("microstrip dispersion model")+" [Kirschning, Kobayashi, " 00060 "Yamashita, Hammerstad, Getsinger, Schneider, Pramanick]")); 00061 } 00062 00063 MSstep::~MSstep() 00064 { 00065 } 00066 00067 Component* MSstep::newOne() 00068 { 00069 return new MSstep(); 00070 } 00071 00072 Element* MSstep::info(QString& Name, char* &BitmapFile, bool getNewOne) 00073 { 00074 Name = QObject::tr("Microstrip Step"); 00075 BitmapFile = (char *) "msstep"; 00076 00077 if(getNewOne) return new MSstep(); 00078 return 0; 00079 }