1
0
mirror of https://github.com/moparisthebest/Simba synced 2025-02-17 15:50:13 -05:00

Removed BadPoints from TDTM because PascalScript cannot handle it.

Changed GoodPoints -> BadPoints.




git-svn-id: http://www.villavu.com/repositories/merlijn/mufasa@374 3f818213-9676-44b0-a9b4-5e4c4e03d09d
This commit is contained in:
Wizzup? 2010-01-04 20:56:47 +00:00
parent f1c1b01cd9
commit 868c1c5d32
14 changed files with 7345 additions and 7323 deletions

View File

@ -1,398 +1,398 @@
<?xml version="1.0"?> <?xml version="1.0"?>
<CONFIG> <CONFIG>
<ProjectOptions> <ProjectOptions>
<Version Value="7"/> <Version Value="7"/>
<General> <General>
<Flags> <Flags>
<MainUnitHasCreateFormStatements Value="False"/> <MainUnitHasCreateFormStatements Value="False"/>
<MainUnitHasTitleStatement Value="False"/> <MainUnitHasTitleStatement Value="False"/>
</Flags> </Flags>
<MainUnit Value="0"/> <MainUnit Value="0"/>
<TargetFileExt Value=""/> <TargetFileExt Value=""/>
<Icon Value="0"/> <Icon Value="0"/>
<UseXPManifest Value="True"/> <UseXPManifest Value="True"/>
<ActiveEditorIndexAtStart Value="2"/> <ActiveEditorIndexAtStart Value="0"/>
</General> </General>
<VersionInfo> <VersionInfo>
<ProjectVersion Value=""/> <ProjectVersion Value=""/>
<Language Value=""/> <Language Value=""/>
<CharSet Value=""/> <CharSet Value=""/>
</VersionInfo> </VersionInfo>
<PublishOptions> <PublishOptions>
<Version Value="2"/> <Version Value="2"/>
<IgnoreBinaries Value="False"/> <IgnoreBinaries Value="False"/>
<IncludeFileFilter Value="*.(pas|pp|inc|lfm|lpr|lrs|lpi|lpk|sh|xml)"/> <IncludeFileFilter Value="*.(pas|pp|inc|lfm|lpr|lrs|lpi|lpk|sh|xml)"/>
<ExcludeFileFilter Value="*.(bak|ppu|ppw|o|so);*~;backup"/> <ExcludeFileFilter Value="*.(bak|ppu|ppw|o|so);*~;backup"/>
</PublishOptions> </PublishOptions>
<RunParams> <RunParams>
<local> <local>
<FormatVersion Value="1"/> <FormatVersion Value="1"/>
<LaunchingApplication PathPlusParams="/usr/X11R6/bin/xterm -T 'Lazarus Run Output' -e $(LazarusDir)/tools/runwait.sh $(TargetCmdLine)"/> <LaunchingApplication PathPlusParams="/usr/X11R6/bin/xterm -T 'Lazarus Run Output' -e $(LazarusDir)/tools/runwait.sh $(TargetCmdLine)"/>
</local> </local>
</RunParams> </RunParams>
<Units Count="27"> <Units Count="27">
<Unit0> <Unit0>
<Filename Value="project1.lpr"/> <Filename Value="project1.lpr"/>
<IsPartOfProject Value="True"/> <IsPartOfProject Value="True"/>
<UnitName Value="project1"/> <UnitName Value="project1"/>
<CursorPos X="29" Y="51"/> <CursorPos X="1" Y="210"/>
<TopLine Value="33"/> <TopLine Value="184"/>
<EditorIndex Value="0"/> <EditorIndex Value="0"/>
<UsageCount Value="74"/> <UsageCount Value="74"/>
<Loaded Value="True"/> <Loaded Value="True"/>
</Unit0> </Unit0>
<Unit1> <Unit1>
<Filename Value="../../../../../usr/lib64/fpc/2.2.4/source/packages/fcl-base/src/custapp.pp"/> <Filename Value="../../../usr/lib64/fpc/2.2.4/source/packages/fcl-base/src/custapp.pp"/>
<UnitName Value="CustApp"/> <UnitName Value="CustApp"/>
<CursorPos X="15" Y="51"/> <CursorPos X="15" Y="51"/>
<TopLine Value="32"/> <TopLine Value="32"/>
<UsageCount Value="7"/> <UsageCount Value="7"/>
</Unit1> </Unit1>
<Unit2> <Unit2>
<Filename Value="../../Units/MMLCore/client.pas"/> <Filename Value="../../Units/MMLCore/client.pas"/>
<UnitName Value="Client"/> <UnitName Value="Client"/>
<CursorPos X="21" Y="51"/> <CursorPos X="21" Y="51"/>
<TopLine Value="35"/> <TopLine Value="35"/>
<EditorIndex Value="9"/> <EditorIndex Value="9"/>
<UsageCount Value="31"/> <UsageCount Value="31"/>
<Loaded Value="True"/> <Loaded Value="True"/>
</Unit2> </Unit2>
<Unit3> <Unit3>
<Filename Value="../../Units/MMLCore/windowutil.pas"/> <Filename Value="../../Units/MMLCore/windowutil.pas"/>
<UnitName Value="windowutil"/> <UnitName Value="windowutil"/>
<CursorPos X="110" Y="30"/> <CursorPos X="110" Y="30"/>
<TopLine Value="3"/> <TopLine Value="3"/>
<UsageCount Value="7"/> <UsageCount Value="7"/>
</Unit3> </Unit3>
<Unit4> <Unit4>
<Filename Value="../../Units/MMLCore/window.pas"/> <Filename Value="../../Units/MMLCore/window.pas"/>
<UnitName Value="Window"/> <UnitName Value="Window"/>
<CursorPos X="55" Y="251"/> <CursorPos X="55" Y="251"/>
<TopLine Value="236"/> <TopLine Value="236"/>
<EditorIndex Value="12"/> <EditorIndex Value="12"/>
<UsageCount Value="30"/> <UsageCount Value="30"/>
<Loaded Value="True"/> <Loaded Value="True"/>
</Unit4> </Unit4>
<Unit5> <Unit5>
<Filename Value="../../Units/MMLCore/colour_conv.pas"/> <Filename Value="../../Units/MMLCore/colour_conv.pas"/>
<UnitName Value="colour_conv"/> <UnitName Value="colour_conv"/>
<CursorPos X="18" Y="346"/> <CursorPos X="18" Y="346"/>
<TopLine Value="309"/> <TopLine Value="309"/>
<EditorIndex Value="4"/> <EditorIndex Value="4"/>
<UsageCount Value="11"/> <UsageCount Value="11"/>
<Loaded Value="True"/> <Loaded Value="True"/>
</Unit5> </Unit5>
<Unit6> <Unit6>
<Filename Value="../../Units/MMLCore/finder.pas"/> <Filename Value="../../Units/MMLCore/finder.pas"/>
<UnitName Value="finder"/> <UnitName Value="finder"/>
<CursorPos X="69" Y="1901"/> <CursorPos X="31" Y="1907"/>
<TopLine Value="1890"/> <TopLine Value="1890"/>
<EditorIndex Value="2"/> <EditorIndex Value="2"/>
<UsageCount Value="34"/> <UsageCount Value="34"/>
<Loaded Value="True"/> <Loaded Value="True"/>
</Unit6> </Unit6>
<Unit7> <Unit7>
<Filename Value="../../Units/MMLCore/input.pas"/> <Filename Value="../../Units/MMLCore/input.pas"/>
<UnitName Value="Input"/> <UnitName Value="Input"/>
<CursorPos X="56" Y="49"/> <CursorPos X="56" Y="49"/>
<TopLine Value="24"/> <TopLine Value="24"/>
<EditorIndex Value="8"/> <EditorIndex Value="8"/>
<UsageCount Value="30"/> <UsageCount Value="30"/>
<Loaded Value="True"/> <Loaded Value="True"/>
</Unit7> </Unit7>
<Unit8> <Unit8>
<Filename Value="../../Units/MMLCore/mufasatypes.pas"/> <Filename Value="../../Units/MMLCore/mufasatypes.pas"/>
<UnitName Value="MufasaTypes"/> <UnitName Value="MufasaTypes"/>
<CursorPos X="1" Y="1"/> <CursorPos X="1" Y="1"/>
<TopLine Value="34"/> <TopLine Value="34"/>
<EditorIndex Value="3"/> <EditorIndex Value="3"/>
<UsageCount Value="32"/> <UsageCount Value="32"/>
<Loaded Value="True"/> <Loaded Value="True"/>
</Unit8> </Unit8>
<Unit9> <Unit9>
<Filename Value="../../Units/MMLCore/ocr.pas"/> <Filename Value="../../Units/MMLCore/ocr.pas"/>
<UnitName Value="ocr"/> <UnitName Value="ocr"/>
<CursorPos X="53" Y="31"/> <CursorPos X="53" Y="31"/>
<TopLine Value="24"/> <TopLine Value="24"/>
<EditorIndex Value="10"/> <EditorIndex Value="10"/>
<UsageCount Value="31"/> <UsageCount Value="31"/>
<Loaded Value="True"/> <Loaded Value="True"/>
</Unit9> </Unit9>
<Unit10> <Unit10>
<Filename Value="../../../../Documents/fpc/rtl/objpas/sysutils/diskh.inc"/> <Filename Value="../../../Documents/fpc/rtl/objpas/sysutils/diskh.inc"/>
<CursorPos X="10" Y="18"/> <CursorPos X="10" Y="18"/>
<TopLine Value="1"/> <TopLine Value="1"/>
<UsageCount Value="8"/> <UsageCount Value="8"/>
</Unit10> </Unit10>
<Unit11> <Unit11>
<Filename Value="../../Units/MMLCore/files.pas"/> <Filename Value="../../Units/MMLCore/files.pas"/>
<UnitName Value="files"/> <UnitName Value="files"/>
<CursorPos X="5" Y="42"/> <CursorPos X="5" Y="42"/>
<TopLine Value="27"/> <TopLine Value="27"/>
<UsageCount Value="8"/> <UsageCount Value="8"/>
</Unit11> </Unit11>
<Unit12> <Unit12>
<Filename Value="../../../../Documents/lazarus/lcl/graphics.pp"/> <Filename Value="../../../Documents/lazarus/lcl/graphics.pp"/>
<UnitName Value="Graphics"/> <UnitName Value="Graphics"/>
<CursorPos X="3" Y="1426"/> <CursorPos X="3" Y="1426"/>
<TopLine Value="1411"/> <TopLine Value="1411"/>
<UsageCount Value="8"/> <UsageCount Value="8"/>
</Unit12> </Unit12>
<Unit13> <Unit13>
<Filename Value="../../Units/MMLCore/bitmaps.pas"/> <Filename Value="../../Units/MMLCore/bitmaps.pas"/>
<UnitName Value="bitmaps"/> <UnitName Value="bitmaps"/>
<CursorPos X="32" Y="835"/> <CursorPos X="32" Y="835"/>
<TopLine Value="850"/> <TopLine Value="850"/>
<EditorIndex Value="1"/> <EditorIndex Value="1"/>
<UsageCount Value="29"/> <UsageCount Value="29"/>
<Loaded Value="True"/> <Loaded Value="True"/>
</Unit13> </Unit13>
<Unit14> <Unit14>
<Filename Value="../../../../Documents/fpc/rtl/inc/objpash.inc"/> <Filename Value="../../../Documents/fpc/rtl/inc/objpash.inc"/>
<CursorPos X="22" Y="177"/> <CursorPos X="22" Y="177"/>
<TopLine Value="162"/> <TopLine Value="162"/>
<UsageCount Value="8"/> <UsageCount Value="8"/>
</Unit14> </Unit14>
<Unit15> <Unit15>
<Filename Value="../../../../Documents/lazarus/lcl/intfgraphics.pas"/> <Filename Value="../../../Documents/lazarus/lcl/intfgraphics.pas"/>
<UnitName Value="IntfGraphics"/> <UnitName Value="IntfGraphics"/>
<CursorPos X="30" Y="2975"/> <CursorPos X="30" Y="2975"/>
<TopLine Value="2959"/> <TopLine Value="2959"/>
<UsageCount Value="8"/> <UsageCount Value="8"/>
</Unit15> </Unit15>
<Unit16> <Unit16>
<Filename Value="../../Units/MMLAddon/mmlpsthread.pas"/> <Filename Value="../../Units/MMLAddon/mmlpsthread.pas"/>
<UnitName Value="mmlpsthread"/> <UnitName Value="mmlpsthread"/>
<CursorPos X="3" Y="154"/> <CursorPos X="3" Y="154"/>
<TopLine Value="235"/> <TopLine Value="235"/>
<UsageCount Value="8"/> <UsageCount Value="8"/>
</Unit16> </Unit16>
<Unit17> <Unit17>
<Filename Value="../../../../Documents/fpc/rtl/i386/mmx.pp"/> <Filename Value="../../../Documents/fpc/rtl/i386/mmx.pp"/>
<UnitName Value="mmx"/> <UnitName Value="mmx"/>
<CursorPos X="80" Y="15"/> <CursorPos X="80" Y="15"/>
<TopLine Value="71"/> <TopLine Value="71"/>
<UsageCount Value="8"/> <UsageCount Value="8"/>
</Unit17> </Unit17>
<Unit18> <Unit18>
<Filename Value="../../Units/MMLAddon/PSInc/Wrappers/ocr.inc"/> <Filename Value="../../Units/MMLAddon/PSInc/Wrappers/ocr.inc"/>
<CursorPos X="20" Y="4"/> <CursorPos X="20" Y="4"/>
<TopLine Value="1"/> <TopLine Value="1"/>
<EditorIndex Value="11"/> <EditorIndex Value="11"/>
<UsageCount Value="27"/> <UsageCount Value="27"/>
<Loaded Value="True"/> <Loaded Value="True"/>
</Unit18> </Unit18>
<Unit19> <Unit19>
<Filename Value="../../Units/MMLCore/dtm.pas"/> <Filename Value="../../Units/MMLCore/dtm.pas"/>
<UnitName Value="dtm"/> <UnitName Value="dtm"/>
<CursorPos X="29" Y="31"/> <CursorPos X="29" Y="31"/>
<TopLine Value="411"/> <TopLine Value="411"/>
<EditorIndex Value="6"/> <EditorIndex Value="6"/>
<UsageCount Value="27"/> <UsageCount Value="27"/>
<Loaded Value="True"/> <Loaded Value="True"/>
</Unit19> </Unit19>
<Unit20> <Unit20>
<Filename Value="../../Units/MMLCore/dtmutil.pas"/> <Filename Value="../../Units/MMLCore/dtmutil.pas"/>
<UnitName Value="dtmutil"/> <UnitName Value="dtmutil"/>
<CursorPos X="1" Y="89"/> <CursorPos X="1" Y="89"/>
<TopLine Value="1"/> <TopLine Value="1"/>
<EditorIndex Value="5"/> <EditorIndex Value="5"/>
<UsageCount Value="23"/> <UsageCount Value="23"/>
<Loaded Value="True"/> <Loaded Value="True"/>
</Unit20> </Unit20>
<Unit21> <Unit21>
<Filename Value="../../../../Documents/fpc/packages/fcl-base/src/custapp.pp"/> <Filename Value="../../../Documents/fpc/packages/fcl-base/src/custapp.pp"/>
<UnitName Value="CustApp"/> <UnitName Value="CustApp"/>
<CursorPos X="59" Y="48"/> <CursorPos X="59" Y="48"/>
<TopLine Value="18"/> <TopLine Value="18"/>
<UsageCount Value="9"/> <UsageCount Value="9"/>
</Unit21> </Unit21>
<Unit22> <Unit22>
<Filename Value="../../Units/MMLCore/ocrutil.pas"/> <Filename Value="../../Units/MMLCore/ocrutil.pas"/>
<UnitName Value="ocrutil"/> <UnitName Value="ocrutil"/>
<CursorPos X="48" Y="417"/> <CursorPos X="48" Y="417"/>
<TopLine Value="395"/> <TopLine Value="395"/>
<EditorIndex Value="7"/> <EditorIndex Value="7"/>
<UsageCount Value="11"/> <UsageCount Value="11"/>
<Loaded Value="True"/> <Loaded Value="True"/>
</Unit22> </Unit22>
<Unit23> <Unit23>
<Filename Value="../../Units/MMLAddon/colourpicker.pas"/> <Filename Value="../../Units/MMLAddon/colourpicker.pas"/>
<UnitName Value="colourpicker"/> <UnitName Value="colourpicker"/>
<CursorPos X="49" Y="288"/> <CursorPos X="49" Y="288"/>
<TopLine Value="265"/> <TopLine Value="265"/>
<UsageCount Value="10"/> <UsageCount Value="10"/>
</Unit23> </Unit23>
<Unit24> <Unit24>
<Filename Value="../../Units/MMLAddon/PSInc/pscompile.inc"/> <Filename Value="../../Units/MMLAddon/PSInc/pscompile.inc"/>
<CursorPos X="116" Y="38"/> <CursorPos X="116" Y="38"/>
<TopLine Value="12"/> <TopLine Value="12"/>
<UsageCount Value="10"/> <UsageCount Value="10"/>
</Unit24> </Unit24>
<Unit25> <Unit25>
<Filename Value="../../Units/MMLAddon/PSInc/psdefines.inc"/> <Filename Value="../../Units/MMLAddon/PSInc/psdefines.inc"/>
<CursorPos X="1" Y="1"/> <CursorPos X="1" Y="1"/>
<TopLine Value="2"/> <TopLine Value="2"/>
<UsageCount Value="10"/> <UsageCount Value="10"/>
</Unit25> </Unit25>
<Unit26> <Unit26>
<Filename Value="../../Units/MMLAddon/PSInc/psexportedmethods.inc"/> <Filename Value="../../Units/MMLAddon/PSInc/psexportedmethods.inc"/>
<CursorPos X="1" Y="1"/> <CursorPos X="1" Y="1"/>
<TopLine Value="1"/> <TopLine Value="1"/>
<UsageCount Value="10"/> <UsageCount Value="10"/>
</Unit26> </Unit26>
</Units> </Units>
<JumpHistory Count="30" HistoryIndex="29"> <JumpHistory Count="30" HistoryIndex="29">
<Position1> <Position1>
<Filename Value="../../Units/MMLCore/finder.pas"/> <Filename Value="../../Units/MMLCore/ocr.pas"/>
<Caret Line="1618" Column="22" TopLine="1607"/> <Caret Line="31" Column="54" TopLine="13"/>
</Position1> </Position1>
<Position2> <Position2>
<Filename Value="../../Units/MMLCore/finder.pas"/> <Filename Value="../../Units/MMLCore/ocrutil.pas"/>
<Caret Line="1637" Column="18" TopLine="1621"/> <Caret Line="8" Column="38" TopLine="1"/>
</Position2> </Position2>
<Position3> <Position3>
<Filename Value="../../Units/MMLCore/ocr.pas"/> <Filename Value="../../Units/MMLCore/colour_conv.pas"/>
<Caret Line="31" Column="54" TopLine="13"/> <Caret Line="47" Column="31" TopLine="27"/>
</Position3> </Position3>
<Position4> <Position4>
<Filename Value="../../Units/MMLCore/ocrutil.pas"/> <Filename Value="../../Units/MMLCore/ocr.pas"/>
<Caret Line="8" Column="38" TopLine="1"/> <Caret Line="31" Column="53" TopLine="24"/>
</Position4> </Position4>
<Position5> <Position5>
<Filename Value="../../Units/MMLCore/colour_conv.pas"/> <Filename Value="../../Units/MMLCore/finder.pas"/>
<Caret Line="47" Column="31" TopLine="27"/> <Caret Line="85" Column="74" TopLine="75"/>
</Position5> </Position5>
<Position6> <Position6>
<Filename Value="../../Units/MMLCore/ocr.pas"/> <Filename Value="../../Units/MMLCore/finder.pas"/>
<Caret Line="31" Column="53" TopLine="24"/> <Caret Line="2027" Column="29" TopLine="2002"/>
</Position6> </Position6>
<Position7> <Position7>
<Filename Value="../../Units/MMLCore/finder.pas"/> <Filename Value="../../Units/MMLCore/finder.pas"/>
<Caret Line="85" Column="74" TopLine="75"/> <Caret Line="2028" Column="37" TopLine="2009"/>
</Position7> </Position7>
<Position8> <Position8>
<Filename Value="../../Units/MMLCore/finder.pas"/> <Filename Value="../../Units/MMLCore/finder.pas"/>
<Caret Line="2027" Column="29" TopLine="2002"/> <Caret Line="2021" Column="75" TopLine="2004"/>
</Position8> </Position8>
<Position9> <Position9>
<Filename Value="../../Units/MMLCore/finder.pas"/> <Filename Value="../../Units/MMLCore/finder.pas"/>
<Caret Line="2028" Column="37" TopLine="2009"/> <Caret Line="1832" Column="28" TopLine="1827"/>
</Position9> </Position9>
<Position10> <Position10>
<Filename Value="../../Units/MMLCore/finder.pas"/> <Filename Value="../../Units/MMLCore/finder.pas"/>
<Caret Line="2021" Column="75" TopLine="2004"/> <Caret Line="1822" Column="1" TopLine="1808"/>
</Position10> </Position10>
<Position11> <Position11>
<Filename Value="../../Units/MMLCore/finder.pas"/> <Filename Value="../../Units/MMLCore/finder.pas"/>
<Caret Line="1832" Column="28" TopLine="1827"/> <Caret Line="1877" Column="23" TopLine="1867"/>
</Position11> </Position11>
<Position12> <Position12>
<Filename Value="../../Units/MMLCore/finder.pas"/> <Filename Value="../../Units/MMLCore/finder.pas"/>
<Caret Line="1822" Column="1" TopLine="1808"/> <Caret Line="62" Column="31" TopLine="44"/>
</Position12> </Position12>
<Position13> <Position13>
<Filename Value="../../Units/MMLCore/finder.pas"/> <Filename Value="../../Units/MMLCore/finder.pas"/>
<Caret Line="1877" Column="23" TopLine="1867"/> <Caret Line="1893" Column="88" TopLine="1867"/>
</Position13> </Position13>
<Position14> <Position14>
<Filename Value="../../Units/MMLCore/finder.pas"/> <Filename Value="../../Units/MMLCore/finder.pas"/>
<Caret Line="62" Column="31" TopLine="44"/> <Caret Line="2033" Column="30" TopLine="2002"/>
</Position14> </Position14>
<Position15> <Position15>
<Filename Value="../../Units/MMLCore/finder.pas"/> <Filename Value="../../Units/MMLCore/finder.pas"/>
<Caret Line="1893" Column="88" TopLine="1867"/> <Caret Line="1934" Column="32" TopLine="1916"/>
</Position15> </Position15>
<Position16> <Position16>
<Filename Value="../../Units/MMLCore/finder.pas"/> <Filename Value="../../Units/MMLCore/finder.pas"/>
<Caret Line="2033" Column="30" TopLine="2002"/> <Caret Line="2007" Column="29" TopLine="1989"/>
</Position16> </Position16>
<Position17> <Position17>
<Filename Value="../../Units/MMLCore/finder.pas"/> <Filename Value="../../Units/MMLCore/finder.pas"/>
<Caret Line="1934" Column="32" TopLine="1916"/> <Caret Line="87" Column="28" TopLine="78"/>
</Position17> </Position17>
<Position18> <Position18>
<Filename Value="../../Units/MMLCore/finder.pas"/> <Filename Value="../../Units/MMLCore/finder.pas"/>
<Caret Line="2007" Column="29" TopLine="1989"/> <Caret Line="2010" Column="81" TopLine="1989"/>
</Position18> </Position18>
<Position19> <Position19>
<Filename Value="../../Units/MMLCore/finder.pas"/> <Filename Value="project1.lpr"/>
<Caret Line="87" Column="28" TopLine="78"/> <Caret Line="111" Column="22" TopLine="101"/>
</Position19> </Position19>
<Position20> <Position20>
<Filename Value="../../Units/MMLCore/finder.pas"/> <Filename Value="../../Units/MMLCore/dtmutil.pas"/>
<Caret Line="2010" Column="81" TopLine="1989"/> <Caret Line="31" Column="24" TopLine="12"/>
</Position20> </Position20>
<Position21> <Position21>
<Filename Value="project1.lpr"/> <Filename Value="../../Units/MMLCore/dtmutil.pas"/>
<Caret Line="111" Column="22" TopLine="101"/> <Caret Line="158" Column="46" TopLine="133"/>
</Position21> </Position21>
<Position22> <Position22>
<Filename Value="../../Units/MMLCore/dtmutil.pas"/> <Filename Value="../../Units/MMLCore/dtmutil.pas"/>
<Caret Line="31" Column="24" TopLine="12"/> <Caret Line="148" Column="33" TopLine="119"/>
</Position22> </Position22>
<Position23> <Position23>
<Filename Value="../../Units/MMLCore/dtmutil.pas"/> <Filename Value="../../Units/MMLCore/dtmutil.pas"/>
<Caret Line="158" Column="46" TopLine="133"/> <Caret Line="31" Column="30" TopLine="1"/>
</Position23> </Position23>
<Position24> <Position24>
<Filename Value="../../Units/MMLCore/dtmutil.pas"/> <Filename Value="../../Units/MMLCore/finder.pas"/>
<Caret Line="148" Column="33" TopLine="119"/> <Caret Line="1898" Column="99" TopLine="1878"/>
</Position24> </Position24>
<Position25> <Position25>
<Filename Value="../../Units/MMLCore/dtmutil.pas"/> <Filename Value="../../Units/MMLCore/finder.pas"/>
<Caret Line="31" Column="30" TopLine="1"/> <Caret Line="1902" Column="65" TopLine="1884"/>
</Position25> </Position25>
<Position26> <Position26>
<Filename Value="../../Units/MMLCore/finder.pas"/> <Filename Value="project1.lpr"/>
<Caret Line="1898" Column="99" TopLine="1878"/> <Caret Line="51" Column="35" TopLine="34"/>
</Position26> </Position26>
<Position27> <Position27>
<Filename Value="../../Units/MMLCore/finder.pas"/> <Filename Value="../../Units/MMLCore/dtmutil.pas"/>
<Caret Line="1902" Column="65" TopLine="1884"/> <Caret Line="77" Column="5" TopLine="49"/>
</Position27> </Position27>
<Position28> <Position28>
<Filename Value="project1.lpr"/> <Filename Value="../../Units/MMLCore/dtm.pas"/>
<Caret Line="51" Column="35" TopLine="34"/> <Caret Line="31" Column="29" TopLine="1"/>
</Position28> </Position28>
<Position29> <Position29>
<Filename Value="../../Units/MMLCore/dtmutil.pas"/> <Filename Value="project1.lpr"/>
<Caret Line="77" Column="5" TopLine="49"/> <Caret Line="128" Column="41" TopLine="109"/>
</Position29> </Position29>
<Position30> <Position30>
<Filename Value="../../Units/MMLCore/dtm.pas"/> <Filename Value="project1.lpr"/>
<Caret Line="31" Column="29" TopLine="1"/> <Caret Line="62" Column="83" TopLine="38"/>
</Position30> </Position30>
</JumpHistory> </JumpHistory>
</ProjectOptions> </ProjectOptions>
<CompilerOptions> <CompilerOptions>
<Version Value="8"/> <Version Value="8"/>
<SearchPaths> <SearchPaths>
<IncludeFiles Value="$(ProjOutDir)/"/> <IncludeFiles Value="$(ProjOutDir)/"/>
<OtherUnitFiles Value="$(ProjPath)/../../Units/MMLCore/;$(ProjPath)/../../Units/Misc/;$(ProjPath)/../../Units/MMLAddon/;$(LazarusDir)/lcl/units/$(TargetCPU)-$(TargetOS)/$(LCLWidgetType)/;$(LazarusDir)/lcl/units/$(TargetCPU)-$(TargetOS)/;$(ProjPath)/../../Units/Linux/;$(LazarusDir)/components/mouseandkeyinput/"/> <OtherUnitFiles Value="$(ProjPath)/../../Units/MMLCore/;$(ProjPath)/../../Units/Misc/;$(ProjPath)/../../Units/MMLAddon/;$(LazarusDir)/lcl/units/$(TargetCPU)-$(TargetOS)/$(LCLWidgetType)/;$(LazarusDir)/lcl/units/$(TargetCPU)-$(TargetOS)/;$(ProjPath)/../../Units/Linux/;$(LazarusDir)/components/mouseandkeyinput/"/>
</SearchPaths> </SearchPaths>
<CodeGeneration> <CodeGeneration>
<Optimizations> <Optimizations>
<VariablesInRegisters Value="True"/> <VariablesInRegisters Value="True"/>
<OptimizationLevel Value="3"/> <OptimizationLevel Value="3"/>
</Optimizations> </Optimizations>
</CodeGeneration> </CodeGeneration>
<Other> <Other>
<CustomOptions Value="-dM_MEMORY_DEBUG"/> <CustomOptions Value="-dM_MEMORY_DEBUG"/>
<CompilerPath Value="$(CompPath)"/> <CompilerPath Value="$(CompPath)"/>
</Other> </Other>
</CompilerOptions> </CompilerOptions>
<Debugging> <Debugging>
<Exceptions Count="3"> <Exceptions Count="3">
<Item1> <Item1>
<Name Value="EAbort"/> <Name Value="EAbort"/>
</Item1> </Item1>
<Item2> <Item2>
<Name Value="ECodetoolError"/> <Name Value="ECodetoolError"/>
</Item2> </Item2>
<Item3> <Item3>
<Name Value="EFOpenError"/> <Name Value="EFOpenError"/>
</Item3> </Item3>
</Exceptions> </Exceptions>
</Debugging> </Debugging>
</CONFIG> </CONFIG>

View File

@ -10,7 +10,7 @@ uses
Forms,Interfaces, Forms,Interfaces,
LCLIntf, LCLIntf,
Client, Client,
bitmaps,x ,mufasatypes,dtm,dtmutil, ocrutil bitmaps,{$IFDEF LINUX}x,{$ENDIF}mufasatypes,dtm,dtmutil, ocrutil
{ you can add units after this }; { you can add units after this };
@ -48,7 +48,7 @@ begin
result.ash[i] := 0; result.ash[i] := 0;
{writeln(format('dtm: (%d, %d) c: %d, t: %d, asz: %d', [result.p[i].x, {writeln(format('dtm: (%d, %d) c: %d, t: %d, asz: %d', [result.p[i].x,
result.p[i].y, result.c[i], result.t[i], result.asz[i]])); } result.p[i].y, result.c[i], result.t[i], result.asz[i]])); }
result.gp[i] := false;// random(10) = 1; result.bp[i] := false;// random(10) = 1;
end; end;
result.c[0] := 255; result.c[0] := 255;
PrintpDTM(result); PrintpDTM(result);
@ -125,6 +125,8 @@ begin
writeln(inttostr(length(p))+ ' points found'); writeln(inttostr(length(p))+ ' points found');
setlength(p,0); setlength(p,0);
PrintpDTM(tdtmtopDTM(pDTMToTDTM(dtm)));
{for i := 0 to high(p) do {for i := 0 to high(p) do
writeln(format('%d: (%d, %d)', [i, p[i].x, p[i].y])); } writeln(format('%d: (%d, %d)', [i, p[i].x, p[i].y])); }

File diff suppressed because it is too large Load Diff

View File

@ -1 +1,7 @@
MAINICON ICON "project1.ico" #define RT_MANIFEST 24
#define CREATEPROCESS_MANIFEST_RESOURCE_ID 1
#define ISOLATIONAWARE_MANIFEST_RESOURCE_ID 2
#define ISOLATIONAWARE_NOSTATICIMPORT_MANIFEST_RESOURCE_ID 3
CREATEPROCESS_MANIFEST_RESOURCE_ID RT_MANIFEST "project1.manifest"
MAINICON ICON "project1.ico"

File diff suppressed because it is too large Load Diff

View File

@ -1,11 +1,11 @@
object Form1: TForm1 object Form1: TForm1
Left = 273 Left = 272
Height = 557 Height = 557
Top = 233 Top = 172
Width = 734 Width = 734
ActiveControl = ScriptPanel ActiveControl = ScriptPanel
Caption = 'THA FUKING MUFASA' Caption = 'THA FUKING MUFASA'
ClientHeight = 537 ClientHeight = 538
ClientWidth = 734 ClientWidth = 734
KeyPreview = True KeyPreview = True
Menu = MainMenu1 Menu = MainMenu1
@ -175,8 +175,8 @@ object Form1: TForm1
end end
object StatusBar: TStatusBar object StatusBar: TStatusBar
Left = 0 Left = 0
Height = 23 Height = 20
Top = 514 Top = 518
Width = 734 Width = 734
Panels = < Panels = <
item item
@ -194,7 +194,7 @@ object Form1: TForm1
object PanelMemo: TPanel object PanelMemo: TPanel
Left = 0 Left = 0
Height = 154 Height = 154
Top = 360 Top = 364
Width = 734 Width = 734
Align = alBottom Align = alBottom
ClientHeight = 154 ClientHeight = 154
@ -214,19 +214,19 @@ object Form1: TForm1
Cursor = crVSplit Cursor = crVSplit
Left = 0 Left = 0
Height = 5 Height = 5
Top = 355 Top = 359
Width = 734 Width = 734
Align = alBottom Align = alBottom
ResizeAnchor = akBottom ResizeAnchor = akBottom
end end
object ScriptPanel: TPanel object ScriptPanel: TPanel
Left = 0 Left = 0
Height = 331 Height = 335
Top = 24 Top = 24
Width = 734 Width = 734
Align = alClient Align = alClient
BevelOuter = bvNone BevelOuter = bvNone
ClientHeight = 331 ClientHeight = 335
ClientWidth = 734 ClientWidth = 734
DockSite = True DockSite = True
TabOrder = 4 TabOrder = 4
@ -234,7 +234,7 @@ object Form1: TForm1
OnDockOver = ScriptPanelDockOver OnDockOver = ScriptPanelDockOver
object PageControl1: TPageControl object PageControl1: TPageControl
Left = 155 Left = 155
Height = 296 Height = 300
Top = 0 Top = 0
Width = 579 Width = 579
Align = alClient Align = alClient
@ -253,7 +253,7 @@ object Form1: TForm1
object SearchPanel: TPanel object SearchPanel: TPanel
Left = 0 Left = 0
Height = 35 Height = 35
Top = 296 Top = 300
Width = 734 Width = 734
Align = alBottom Align = alBottom
BevelOuter = bvSpace BevelOuter = bvSpace
@ -375,7 +375,7 @@ object Form1: TForm1
Left = 320 Left = 320
Height = 17 Height = 17
Top = 7 Top = 7
Width = 72 Width = 74
Caption = 'Match case' Caption = 'Match case'
OnClick = CheckBoxMatchCaseClick OnClick = CheckBoxMatchCaseClick
TabOrder = 1 TabOrder = 1
@ -383,21 +383,23 @@ object Form1: TForm1
end end
object SplitterFunctionList: TSplitter object SplitterFunctionList: TSplitter
Left = 150 Left = 150
Height = 296 Height = 300
Top = 0 Top = 0
Width = 5 Width = 5
OnCanResize = SplitterFunctionListCanResize OnCanResize = SplitterFunctionListCanResize
Visible = False Visible = False
end end
inline frmFunctionList: TFunctionListFrame inline frmFunctionList: TFunctionListFrame
Height = 296 Height = 300
Width = 150 Width = 150
ClientHeight = 296 ClientHeight = 300
ClientWidth = 150 ClientWidth = 150
OnEndDock = nil OnEndDock = nil
TabOrder = 3 TabOrder = 3
DesignLeft = 401
DesignTop = 219
inherited FunctionList: TTreeView inherited FunctionList: TTreeView
Height = 257 Height = 261
Width = 150 Width = 150
OnChange = FunctionListChange OnChange = FunctionListChange
OnDeletion = nil OnDeletion = nil
@ -405,7 +407,7 @@ object Form1: TForm1
OnExit = FunctionListExit OnExit = FunctionListExit
end end
inherited editSearchList: TEdit inherited editSearchList: TEdit
Top = 275 Top = 279
Width = 150 Width = 150
OnExit = editSearchListExit OnExit = editSearchListExit
OnKeyDown = editSearchListKeyDown OnKeyDown = editSearchListKeyDown

File diff suppressed because it is too large Load Diff

View File

@ -15,6 +15,7 @@ var
p,pp: TPointArray; p,pp: TPointArray;
c,t,asz,ash: TIntegerArray; c,t,asz,ash: TIntegerArray;
bp:array of boolean;
begin begin
p := [Point(0,0), Point(1,1), Point(-4, -4)]; p := [Point(0,0), Point(1,1), Point(-4, -4)];
@ -23,10 +24,7 @@ begin
asz := [0, 4, 4]; asz := [0, 4, 4];
ash := [dtm_Rectangle, dtm_Rectangle, dtm_Rectangle]; ash := [dtm_Rectangle, dtm_Rectangle, dtm_Rectangle];
setlength(ppdtm.p,2); setlength(ppdtm.p,2);
setlength(ppdtm.c,2); bp:=[false,false,false];
setlength(ppdtm.t,2);
setlength(ppdtm.asz,2);
setlength(ppdtm.ash,2);
ppdtm.l := 3;//We have 3 points.. ppdtm.l := 3;//We have 3 points..
ppdtm.p := p; ppdtm.p := p;
@ -34,6 +32,7 @@ begin
ppdtm.t := t; ppdtm.t := t;
ppdtm.asz := asz; ppdtm.asz := asz;
ppdtm.ash := ash; ppdtm.ash := ash;
ppdtm.bp := bp;
ppdtm.n := 'TestDTM';//Our name! ppdtm.n := 'TestDTM';//Our name!
dtm := AddpDTM(ppdtm); dtm := AddpDTM(ppdtm);

View File

@ -24,6 +24,7 @@
Sender.Comp.AddConstantN('AppPath','string').SetString(CurrThread.AppPath); Sender.Comp.AddConstantN('AppPath','string').SetString(CurrThread.AppPath);
Sender.Comp.AddConstantN('ScriptPath','string').SetString(CurrThread.ScriptPath); Sender.Comp.AddConstantN('ScriptPath','string').SetString(CurrThread.ScriptPath);
Sender.Comp.AddTypeS('TIntegerArray', 'Array of integer'); Sender.Comp.AddTypeS('TIntegerArray', 'Array of integer');
Sender.Comp.AddTypeS('TBoolArray', 'Array of Boolean');
Sender.Comp.AddTypes('TBox', 'record X1,Y1,X2,Y2 : Integer; end;'); Sender.Comp.AddTypes('TBox', 'record X1,Y1,X2,Y2 : Integer; end;');
Sender.Comp.AddTypeS('TPointArray','Array of TPoint'); Sender.Comp.AddTypeS('TPointArray','Array of TPoint');
Sender.Comp.AddTypeS('T2DPointArray','Array of Array of TPoint'); Sender.Comp.AddTypeS('T2DPointArray','Array of Array of TPoint');
@ -32,10 +33,10 @@ Sender.Comp.AddTypeS('TBmpMirrorStyle','(MirrorWidth,MirrorHeight,MirrorLine)');
Sender.Comp.AddTypeS('TMask','record White, Black : TPointArray; WhiteHi,BlackHi : integer; W,H : integer;end;'); Sender.Comp.AddTypeS('TMask','record White, Black : TPointArray; WhiteHi,BlackHi : integer; W,H : integer;end;');
Sender.Comp.AddTypes('TDTMPointDef', 'record x, y, Color, Tolerance, AreaSize, AreaShape: integer; Good: Boolean; end;'); Sender.Comp.AddTypes('TDTMPointDef', 'record x, y, Color, Tolerance, AreaSize, AreaShape: integer; end;');
Sender.Comp.AddTypes('TDTMPointDefArray', 'Array Of TDTMPointDef;'); Sender.Comp.AddTypes('TDTMPointDefArray', 'Array Of TDTMPointDef;');
Sender.Comp.AddTypes('TDTM','record MainPoint: TDTMPointDef; SubPoints: TDTMPointDefArray; end;'); Sender.Comp.AddTypes('TDTM','record MainPoint: TDTMPointDef; SubPoints: TDTMPointDefArray; end;');
Sender.Comp.AddTypeS('pDTM','record l: Integer;p: TPointArray;c, t, asz, ash: TIntegerArray; gp: array of boolean; n: String; end;'); Sender.Comp.AddTypeS('pDTM','record l: Integer;p: TPointArray;c, t, asz, ash: TIntegerArray; bp: Array Of Boolean; n: String; end;');
Sender.Comp.AddTypeS('T2DExtendedArray', 'array of array of extended;'); Sender.Comp.AddTypeS('T2DExtendedArray', 'array of array of extended;');
Sender.Comp.AddTypeS('TStringArray','Array of string;'); Sender.Comp.AddTypeS('TStringArray','Array of string;');

View File

@ -28,8 +28,8 @@ AddFunction(@psWriteln,'procedure writeln(s : string);');
SetCurrSection('DTM'); SetCurrSection('DTM');
AddFunction(@PrintpDTM, 'Procedure PrintpDTM(tDTM : pDTM);'); AddFunction(@PrintpDTM, 'Procedure PrintpDTM(tDTM : pDTM);');
AddFunction(@ps_GetDTM ,'function GetDTM(index: Integer; out dtm: pDTM): Boolean;'); AddFunction(@ps_GetDTM ,'function GetDTM(index: Integer; out dtm: pDTM): Boolean;');
AddFunction(@pDTMToTDTM, 'Function pDTMToTDTM(Const DTM: pDTM): TDTM;'); AddFunction(@pDTMToTDTM, 'Function pDTMToTDTM(DTM: pDTM): TDTM;');
AddFunction(@tDTMTopDTM, 'Function tDTMTopDTM(Const DTM: TDTM): pDTM;'); AddFunction(@tDTMTopDTM, 'Function tDTMTopDTM(DTM: TDTM): pDTM;');
AddFunction(@ps_DTMFromString, 'function DTMFromString(DTMString: String): Integer;'); AddFunction(@ps_DTMFromString, 'function DTMFromString(DTMString: String): Integer;');
AddFunction(@ps_FreeDTM, 'procedure FreeDTM(DTM: Integer);'); AddFunction(@ps_FreeDTM, 'procedure FreeDTM(DTM: Integer);');
AddFunction(@ps_FindDTM, 'function FindDTM(DTM: Integer; out x, y: Integer; x1, y1, x2, y2: Integer): Boolean;'); AddFunction(@ps_FindDTM, 'function FindDTM(DTM: Integer; out x, y: Integer; x1, y1, x2, y2: Integer): Boolean;');

View File

@ -184,6 +184,7 @@ begin
SetLength(Result.t,DestLen); SetLength(Result.t,DestLen);
SetLength(Result.asz,DestLen); SetLength(Result.asz,DestLen);
SetLength(Result.ash,DestLen); SetLength(Result.ash,DestLen);
SetLength(Result.bp,DestLen);
b := @Self.Bufferstring[1]; b := @Self.Bufferstring[1];
for i := 0 to DestLen - 1 do for i := 0 to DestLen - 1 do
begin; begin;
@ -194,6 +195,7 @@ begin
Result.ash[i] := PInteger(@b^[c+16])^; Result.ash[i] := PInteger(@b^[c+16])^;
Result.c[i] := PInteger(@b^[c+20])^; Result.c[i] := PInteger(@b^[c+20])^;
Result.t[i] := PInteger(@b^[c+24])^; Result.t[i] := PInteger(@b^[c+24])^;
Result.bp[i] := False;
end; end;
end; end;
result.l := length(result.p); result.l := length(result.p);

View File

@ -33,7 +33,7 @@ uses
Function pDTMToTDTM(Const DTM: pDTM): TDTM; Function pDTMToTDTM(Const DTM: pDTM): TDTM;
Function tDTMTopDTM(Const DTM: TDTM): pDTM; Function tDTMTopDTM(Const DTM: TDTM): pDTM;
Procedure PrintpDTM(tDTM : pDTM); Procedure PrintpDTM(aDTM : pDTM);
procedure initdtm(out d: pdtm; len: integer); procedure initdtm(out d: pdtm; len: integer);
function ValidMainPointBox(var dtm: pDTM; const x1, y1, x2, y2: Integer): TBox; function ValidMainPointBox(var dtm: pDTM; const x1, y1, x2, y2: Integer): TBox;
@ -64,7 +64,7 @@ begin
setlength(d.t, len); setlength(d.t, len);
setlength(d.ash, len); setlength(d.ash, len);
setlength(d.asz, len); setlength(d.asz, len);
setlength(d.gp, len); setlength(d.bp, len);
FillChar(d.p[0], SizeOf(TPoint) * len, 0); FillChar(d.p[0], SizeOf(TPoint) * len, 0);
FillChar(d.c[0], SizeOf(Integer) * len, 0); FillChar(d.c[0], SizeOf(Integer) * len, 0);
@ -76,19 +76,19 @@ begin
//FillChar(d.gp[0], SizeOf(Boolean) * len, 0); //FillChar(d.gp[0], SizeOf(Boolean) * len, 0);
for i := 0 to len - 1 do for i := 0 to len - 1 do
d.gp[i] := true; d.bp[i] := False;
end; end;
Procedure PrintpDTM(tDTM : pDTM); Procedure PrintpDTM(aDTM : pDTM);
var var
i : integer; i : integer;
begin; begin;
i := 0; i := 0;
if tdtm.n <> '' then if adtm.n <> '' then
writeln('Name: ' + tdtm.n); writeln('Name: ' + aDTM.n);
WriteLn('MainPoint ' + inttostr(tDTM.p[i].x) + ', ' + inttostr(tDTM.p[i].y) + ' col: ' + inttostr(tDTM.c[i]) + ', tol: ' + inttostr(tDTM.t[i]) + '; ashape ' + inttostr(tdtm.ash[i]) + ' asize ' + inttostr(tdtm.asz[i])+ ', Good: ' + BoolToStr(tdtm.gp[i])); WriteLn('MainPoint ' + inttostr(aDTM.p[i].x) + ', ' + inttostr(aDTM.p[i].y) + ' col: ' + inttostr(aDTM.c[i]) + ', tol: ' + inttostr(aDTM.t[i]) + '; ashape ' + inttostr(aDTM.ash[i]) + ' asize ' + inttostr(aDTM.asz[i])+ ', Bad Point: ' + BoolToStr(aDTM.bp[i]));
for I := 1 to High(tDTM.p) do for I := 1 to High(aDTM.p) do
WriteLn('SubPoint['+IntToStr(I) + '] ' + inttostr(tDTM.p[i].x) + ', ' + inttostr(tDTM.p[i].y) + ' col: ' + inttostr(tDTM.c[i]) + ', tol: ' + inttostr(tDTM.t[i]) + '; ashape ' + inttostr(tdtm.ash[i]) + ' asize ' + inttostr(tdtm.asz[i]) + ', Good: ' + BoolToStr(tdtm.gp[i])); WriteLn('SubPoint['+IntToStr(I) + '] ' + inttostr(aDTM.p[i].x) + ', ' + inttostr(aDTM.p[i].y) + ' col: ' + inttostr(aDTM.c[i]) + ', tol: ' + inttostr(aDTM.t[i]) + '; ashape ' + inttostr(aDTM.ash[i]) + ' asize ' + inttostr(aDTM.asz[i]) + ', Bad Point: ' + BoolToStr(aDTM.bp[i]));
end; end;
Function pDTMToTDTM(Const DTM: pDTM): TDTM; Function pDTMToTDTM(Const DTM: pDTM): TDTM;
@ -106,7 +106,6 @@ Begin
Temp.AreaShape := DTM.ash[i]; Temp.AreaShape := DTM.ash[i];
Temp.Color := DTM.c[i]; Temp.Color := DTM.c[i];
Temp.Tolerance := DTM.t[i]; Temp.Tolerance := DTM.t[i];
Temp.Good:= DTM.gp[i];
End; End;
Result.MainPoint := Temp; Result.MainPoint := Temp;
SetLength(Result.SubPoints, Length(DTM.p) - 1); SetLength(Result.SubPoints, Length(DTM.p) - 1);
@ -120,7 +119,6 @@ Begin
Temp.AreaShape := DTM.ash[i]; Temp.AreaShape := DTM.ash[i];
Temp.Color := DTM.c[i]; Temp.Color := DTM.c[i];
Temp.Tolerance := DTM.t[i]; Temp.Tolerance := DTM.t[i];
Temp.Good:= DTM.gp[i];
Result.SubPoints[I - 1] := Temp; Result.SubPoints[I - 1] := Temp;
End; End;
End; End;
@ -141,7 +139,7 @@ Begin
SetLength(Result.t, Length(DTM.SubPoints) + 1); SetLength(Result.t, Length(DTM.SubPoints) + 1);
SetLength(Result.asz, Length(DTM.SubPoints) + 1); SetLength(Result.asz, Length(DTM.SubPoints) + 1);
SetLength(Result.ash, Length(DTM.SubPoints) + 1); SetLength(Result.ash, Length(DTM.SubPoints) + 1);
SetLength(Result.gp, Length(DTM.SubPoints) + 1); SetLength(Result.bp, Length(DTM.SubPoints) + 1);
Result.p[0].x := DTM.MainPoint.x; Result.p[0].x := DTM.MainPoint.x;
Result.p[0].y := DTM.MainPoint.y; Result.p[0].y := DTM.MainPoint.y;
@ -149,7 +147,6 @@ Begin
Result.t[0] := DTM.MainPoint.Tolerance; Result.t[0] := DTM.MainPoint.Tolerance;
Result.asz[0] := DTM.MainPoint.AreaSize; Result.asz[0] := DTM.MainPoint.AreaSize;
Result.ash[0] := DTM.MainPoint.AreaShape; Result.ash[0] := DTM.MainPoint.AreaShape;
Result.gp[0] := DTM.MainPoint.Good;
For I := 1 To Length(DTM.SubPoints) Do // High + 1 = Length For I := 1 To Length(DTM.SubPoints) Do // High + 1 = Length
Begin Begin
@ -159,9 +156,12 @@ Begin
Result.t[I] := DTM.SubPoints[I - 1].Tolerance; Result.t[I] := DTM.SubPoints[I - 1].Tolerance;
Result.asz[I] := DTM.SubPoints[I - 1].AreaSize; Result.asz[I] := DTM.SubPoints[I - 1].AreaSize;
Result.ash[I] := DTM.SubPoints[I - 1].AreaShape; Result.ash[I] := DTM.SubPoints[I - 1].AreaShape;
Result.gp[I] := DTM.SubPoints[I - 1].Good;
End; End;
Result.l := length(Result.p); Result.l := length(Result.p);
setlength(result.bp, result.l);
for i := 0 to result.l -1 do
result.bp[i] := false;
End; End;
{ TODO: Check if bounds are correct? } { TODO: Check if bounds are correct? }
@ -181,7 +181,7 @@ begin
Exit(False); Exit(False);
if dtm.l <> length(dtm.ash) then if dtm.l <> length(dtm.ash) then
Exit(False); Exit(False);
if dtm.l <> length(dtm.gp) then if dtm.l <> length(dtm.bp) then
Exit(False); Exit(False);
for i := 0 to dtm.l-1 do for i := 0 to dtm.l-1 do
if dtm.asz[i] < 0 then if dtm.asz[i] < 0 then

View File

@ -1819,6 +1819,8 @@ var
// point count // point count
pc: Integer = 0; pc: Integer = 0;
goodPoints: Array of Boolean;
label theEnd; label theEnd;
label AnotherLoopEnd; label AnotherLoopEnd;
@ -1838,6 +1840,10 @@ begin
DefaultOperations(MA.x1, MA.y1, MA.x2, MA.y2); DefaultOperations(MA.x1, MA.y1, MA.x2, MA.y2);
setlength(goodPoints, dtm.l);
for i := 0 to dtm.l - 1 do
goodPoints[i] := not dtm.bp[i];
// Init data structure B. // Init data structure B.
W := x2 - x1; W := x2 - x1;
H := y2 - y1; H := y2 - y1;
@ -1899,7 +1905,7 @@ begin
goto AnotherLoopEnd; goto AnotherLoopEnd;
end; end;
if (b[xxx][yyy+1] and (1 shl i) = 0) and dtm.gp[i] then if (b[xxx][yyy+1] and (1 shl i) = 0) and goodPoints[i] then
goto AnotherLoopEnd; goto AnotherLoopEnd;
end; end;
end; end;

View File

@ -98,7 +98,7 @@ type
l: Integer; l: Integer;
p: TPointArray; p: TPointArray;
c, t, asz, ash: TIntegerArray; c, t, asz, ash: TIntegerArray;
gp: TBoolArray; bp: Array Of Boolean;
n: String; // DOEN n: String; // DOEN
end; end;
@ -106,7 +106,6 @@ type
TDTMPointDef = record TDTMPointDef = record
x, y, Color, Tolerance, AreaSize, AreaShape: integer; x, y, Color, Tolerance, AreaSize, AreaShape: integer;
Good: Boolean;
end; end;
TDTMPointDefArray = Array Of TDTMPointDef; TDTMPointDefArray = Array Of TDTMPointDef;