Simple Nano Circuit 0.0.2
|
Public Member Functions | |
PlacementManagerClass (AsgardClass *) | |
void | Drawing () |
遍历IC、Wire、FreePin,渲染到屏幕上 | |
bool | isPreviewICHolderInFreePlace (BaseIcObject *) |
bool | isPreviewWireHolderInFreePlace (WireObject *) |
bool | isPreviewFreePointHolderInFreePlace (FootPinNode *) |
template<typename T > | |
bool | conflictWith (const SDL_Rect &rect, const std::list< T > &target) |
bool | PlaceWire (WireObject *) |
放置线段到布局中 More... | |
bool | PlaceFootPin (FootPinNode *) |
放置落点到布局中 | |
bool | PlaceIc (BaseIcObject *) |
放置IC元件到布局中 | |
void | resetToBlank () |
清空当前布局,重新开始新的电路图绘制 | |
BaseElectronObject * | findObjectUnderMousePos (SDL_Point &) |
找到鼠标落点下的IC,将IC句柄返回 | |
void | ObjectsReport () |
简报当前已放置在布局当中的所有器件 | |
void | eraseRedundantWires () |
擦除冗余线段 | |
bool | eraseExactlyIdenticalWires () |
擦除完全相同的线段 | |
bool | isShowingCurrentText () const |
void | setShowingCurrentText (bool _val) |
void | CalculateCurrents () |
电流计算 | |
bool | buildingFootPinsCurrent () |
对电路中的所有引脚位置进行扫描,对能够计算出电流的引脚完成电流计算 More... | |
void | resetCurrentCalculateState () |
bool | canCalcCurrentBySamePosOtherPins (FootPinNode *footPin) |
double | calcCurrentBySamePosOtherPins (FootPinNode *footPin) |
void | remarkPinsValidState () |
将所有的pin的有效状态进行检测和设置 | |
void | markInvalidPins () |
void | saveToFile (std::ofstream &) |
Public Attributes | |
std::list< BaseIcObject * > | snIcObjects |
存放已经放置在画布上的所有IC | |
std::list< WireObject * > | snWires |
存放已经放置在画布上的所有线段 | |
std::list< FootPinNode * > | snFreeFootPins |
存放已经放置在画布上的所有自由引脚落点 | |
std::list< FootPinNode * > | snBoundFootPins |
存放已经放置在画布上的所有隶属于IC或Wire的引脚落点 | |
std::unordered_map< std::string, std::set< FootPinNode * > > | samePosFootPins |
存放同位节点信息 | |
std::list< FootPinNode * > | waitToCalculateCurrentFootPins |
存放需要推导电流的所有FootPin More... | |
bool PlacementManagerClass::buildingFootPinsCurrent | ( | ) |
对电路中的所有引脚位置进行扫描,对能够计算出电流的引脚完成电流计算
电阻一端完成电流的计算之后,另外一段的电流自然也就计算出来了
电容一端完成电流的计算之后,另外一段的电流自然也就计算出来了
bool PlacementManagerClass::PlaceWire | ( | WireObject * | _wire | ) |
放置线段到布局中
放置线段到当前的电路图当中
std::list<FootPinNode*> PlacementManagerClass::waitToCalculateCurrentFootPins |
存放需要推导电流的所有FootPin