개정판 98dbb844
issue #563: test second run end group
Change-Id: I392dd568328e1a6b5ee38ca28ece38a8fdcb1536
DTI_PID/DTI_PID/LineNoTracer.py | ||
---|---|---|
579 | 579 |
"""make end break""" |
580 | 580 |
end_break_names = docdata.getSymbolListByType('type', 'End Break') |
581 | 581 |
if len(end_break_names) is not 0: |
582 |
|
|
583 | 582 |
svgFileName = end_break_names[0].sName |
584 | 583 |
symbol = docdata.getSymbolByQuery('name', svgFileName) |
585 | 584 |
svgFilePath = os.path.join(docdata.getCurrentProject().getSvgFilePath(), symbol.getType(), svgFileName+'.svg') |
586 | 585 |
|
587 |
#end_breaks = [] |
|
588 | 586 |
lineNo_froms = [] |
589 | 587 |
lineNo_tos = [] |
590 | 588 |
|
591 | 589 |
for lineNo in lineNos: |
592 |
lineNo_froms.append(lineNo.prop('From')) if lineNo.prop('From') is not None else None |
|
593 |
lineNo_tos.append(lineNo.prop('To')) if lineNo.prop('To') is not None else None |
|
594 |
#end_breaks.extend(lineNo.end_break()) |
|
590 |
#lineNo_froms.append(lineNo.prop('From')) if lineNo.prop('From') is not None else None |
|
591 |
#lineNo_tos.append(lineNo.prop('To')) if lineNo.prop('To') is not None else None |
|
592 |
|
|
593 |
for run in lineNo.runs: |
|
594 |
start = [run.items[0]] |
|
595 |
end = [run.items[-1]] if run.items[0] is not run.items[-1] else [] |
|
596 |
lineNo_froms.extend(start) |
|
597 |
lineNo_tos.extend(end) |
|
595 | 598 |
|
596 | 599 |
for line_end in lineNo_froms + lineNo_tos: |
597 | 600 |
#print(type(line_end)) |
... | ... | |
604 | 607 |
tokens = symbol.getOriginalPoint().split(',') |
605 | 608 |
origin = [pt[0] + float(tokens[0]), pt[1] + float(tokens[1])] |
606 | 609 |
end_break.buildItem(svgFileName, symbol.getType(), 5.7, pt, [end_break.boundingRect().width(), end_break.boundingRect().height()], origin, [], symbol.getBaseSymbol(), symbol.getAdditionalSymbol(), symbol.getHasInstrumentLabel()) |
607 |
|
|
610 |
|
|
608 | 611 |
end_break.set_property('Connected Item', connector.connectedItem) |
609 | 612 |
end_break.setToolTip('owner : ' + str(line_end)) |
610 | 613 |
end_break.area = 'Drawing' |
611 | 614 |
end_break.owner = line_end |
612 | 615 |
end_breaks.append(end_break) |
613 |
|
|
616 |
|
|
614 | 617 |
if end_breaks: |
615 | 618 |
# check duplication |
616 | 619 |
dupl = set() |
DTI_PID/DTI_PID/RecognitionDialog.py | ||
---|---|---|
465 | 465 |
|
466 | 466 |
app_doc_data.imgName = os.path.splitext(os.path.basename(mainRes))[0] |
467 | 467 |
else: |
468 |
import math |
|
469 |
from TextInfo import TextInfo |
|
470 |
|
|
468 | 471 |
textItems = [item for item in worker.graphicsView.scene.items() if |
469 | 472 |
issubclass(type(item), QEngineeringTextItem)] |
470 | 473 |
app_doc_data.texts.extend(textItems) |
... | ... | |
477 | 480 |
lineNoTextItem.explode() |
478 | 481 |
|
479 | 482 |
for textItem in textItems: |
483 |
textInfoList.append(TextInfo(textItem.text(), textItem.loc[0], textItem.loc[1], textItem.size[0], textItem.size[1], \ |
|
484 |
round(math.degrees(textItem.angle)))) |
|
485 |
|
|
480 | 486 |
textItem.owner = None |
481 | 487 |
worker.graphicsView.scene.removeItem(textItem) |
482 | 488 |
|
... | ... | |
511 | 517 |
# remove text from image |
512 | 518 |
Worker.drawFoundSymbolsOnCanvas(mainRes, textInfoList, listWidget) |
513 | 519 |
textDetector.removeTextFromImage(app_doc_data.imgSrc, offset) |
520 |
if not worker.isTextChecked: |
|
521 |
textInfoList.clear() |
|
514 | 522 |
# up to here |
515 | 523 |
|
516 | 524 |
removedSymbolImgPath = os.path.join(project.getTempPath(), os.path.basename(mainRes)) |
내보내기 Unified diff