Results 1 to 20 of 20

Thread: SimbaExt - My little library!

  1. #1
    Join Date
    Feb 2012
    Location
    Norway
    Posts
    995
    Mentioned
    145 Post(s)
    Quoted
    596 Post(s)

    Default Standard Library Extension for Simba

    SimbaExt
    So I have been working on a small plugin for Simba (originally for SCAR). It contains some extra functionality for Simba, pretty much just a Standard Library Extension for Simba, hence the name (Short for Simba Extension). Contains some cool TPointArray function, some math function, and some matrix functions. Also added a small wrapper around simba bitmap to make it more easy for me to convert from matrix to image, and the other way around (nothing special), and stuff like that.


    Get it now:
    The include (extract in to Includes-folder), and source is found @ https://github.com/WarPie/SimbaExt


    Documentation!
    Even tho most of the function-names speaks for it self, a documentation is really needed, as it has become pretty large.
    If you find that a function it's bugged then post it here, with a small example.


    Other notes:
    1. (Almost) every function should start with a prefix: se. this is to avoid collision with functionality from other libraries. This way SimbaExt can be used together with SRL. Functions that does not necessarily start with a prefix is a type helpers, EG: `TIntMatrix.Indices(..)`, `TPointArray.Append(..)`.
    2. Type methods for matrices uses: TIntMatrix, TFloatMatrix, TDoubleMatrix, TExtMatrix.. EG:
      Code:
      var mat: TIntMatrix;
      begin
        Mat.SetSize(10,10);
        WriteLn(Mat);
        Mat.Put([Point(5,5),Point(5,6)], 15);
        WriteLn(Mat);
      end;
    3. Plugin/Include is ONLY supported in Lape, I do not plan to support PascalScript.
    Last edited by slacky; 08-01-2017 at 12:33 PM.
    !No priv. messages please

  2. #2
    Join Date
    Nov 2011
    Location
    England
    Posts
    3,072
    Mentioned
    296 Post(s)
    Quoted
    1094 Post(s)

    Default





    Simba Code:
    program new;
    {$I SimbaExt/SimbaExt.simba}

    var
      BMP:TRafBitmap;
      Mat:T2DFloatArray;
      TPA,crc: TPointArray;
      ATPA:T2DPointArray;
      i:Integer;
      t: Int64;
    begin
      saveBitmap(BitmapFromString(585, 455, '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'), 'hi.bmp');


      bmp.Open('hi.bmp'); //what ever bitmap...


      TPA := se_FindCornerMidPoints(BMP.ToMatrix(), 1.0, 2, 0.1, 10);
      for i:=0 to High(TPA) do
      begin
        SetLength(crc, 0);
        se_TPACircle(crc, TPA[i],7);
        crc := se_FloodFillTPA(crc, middleTPA(crc), false);
        BMP.SetPixels(crc, $0000FF);
        BMP.Pixel(TPA[i].x, TPA[i].y, $0000FF);
      end;

      BMP.Debug();
      BMP.Free;
    end.
    Last edited by Olly; 03-19-2014 at 05:48 PM.

  3. #3
    Join Date
    Feb 2012
    Location
    Norway
    Posts
    995
    Mentioned
    145 Post(s)
    Quoted
    596 Post(s)

    Default

    se_TPACircle is now a function, and supports to be filled.

    A new example of Corner Detection on a image:
    Simba Code:
    program new;
    {$I SimbaExt/SimbaExt.simba}

    var
      BMP: TRafBitmap;
      TPA: TPointArray;
      i: Integer;
    begin
      BMP.Open('Tests/chess.png');
      TPA := se.FindCornerMidPoints(BMP.ToMatrix(), 1.0, 1, 0.3, 1);
      for i:=0 to High(TPA) do
        BMP.SetPixels(se.TPACircle(TPA[i], 2, True), $0000FF);

      BMP.Debug();
      BMP.Free();
    end.
    chess.png



    Fixed version of what olly posted:
    updated ollys example

    Simba Code:
    program new;
    {$I SimbaExt/SimbaExt.simba}

    var
      BMP:TRafBitmap;
      TPA:TPointArray;
      i:Integer;
    begin
      bmp.Create(585, 455, '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'); //what ever bitmap...

      TPA := se.FindCornerMidPoints(BMP.ToMatrix(), 1.0, 2, 0.1, 10);
      for i:=0 to High(TPA) do
        BMP.SetPixels(se.TPACircle(TPA[i], 7, True), $0000FF);

      BMP.Debug();
      BMP.Free;
    end.
    !No priv. messages please

  4. #4
    Join Date
    Dec 2011
    Posts
    2,147
    Mentioned
    221 Post(s)
    Quoted
    1068 Post(s)

  5. #5
    Join Date
    Aug 2007
    Location
    Colorado
    Posts
    7,421
    Mentioned
    268 Post(s)
    Quoted
    1442 Post(s)

    Default

    Really great work Slacky, this is awesome. Also, why the name-change?

    Current projects:
    [ AeroGuardians (GotR minigame), Motherlode Miner, Blast furnace ]

    "I won't fall in your gravity. Open your eyes,
    you're the Earth and I'm the sky..."


  6. #6
    Join Date
    Jan 2007
    Posts
    8,876
    Mentioned
    123 Post(s)
    Quoted
    327 Post(s)

    Default

    Very nice! Congratulations on the release!

  7. #7
    Join Date
    Feb 2012
    Location
    Norway
    Posts
    995
    Mentioned
    145 Post(s)
    Quoted
    596 Post(s)

    Default

    Thanks for the nice comments guys!

    Quote Originally Posted by Flight View Post
    Really great work Slacky, this is awesome. Also, why the name-change?
    I usually go under the nick "slacky", but when I registered here, slacky was taken..


    ---------
    If anyone got some suggestions, please feel free to share!
    !No priv. messages please

  8. #8
    Join Date
    Jan 2007
    Posts
    8,876
    Mentioned
    123 Post(s)
    Quoted
    327 Post(s)

    Default

    I am interested in knowing more about TRafBitmap and the se_Im-functions in SimbaExt_Imaging.pas
    Could you post some examples of what one can do differently in simba using TRafBitmap and the se_Im-functions as opposed to TMufasaBitmap?

    You probably already know this, but documentation of such huge plugins is what differs the great plugins from the exceptional ones and you'll see more use if you document it

  9. #9
    Join Date
    Feb 2012
    Location
    Norway
    Posts
    995
    Mentioned
    145 Post(s)
    Quoted
    596 Post(s)

    Default

    Quote Originally Posted by Zyt3x View Post
    I am interested in knowing more about TRafBitmap and the se_Im-functions in SimbaExt_Imaging.pas
    Could you post some examples of what one can do differently in simba using TRafBitmap and the se_Im-functions as opposed to TMufasaBitmap?
    TRafBitmap as mentioned is just a wrapper around Simba bitmap.. I do prefer short function-names and a basic object oriented style. There is not that much more to it. Well when I made it, BitmapToMatrix did not exist in Simba, so it also had faster converting from bitmap to matrix / and back. It also features BMP.FindColorTol(...), and no need to often call GetBitmapSize(BMP, W,H), it has the size stored, so you just do BMP.Width, BMP.Height (simpler). It's these small things which matters for me

    Donno what I can say about the se_Im functions, it's just more image-functions.. Functions there are before I made SimbaExt, when I was still only working on SCARExt: SCAR did not have these functions. We see that Simba is taking some of the more important "se_Im" functions, and adding it (mostly thanks to olly). EG: ThresholdAdaptiveBitmap(..) that function is "se_ImThresholdAdaptive(..)", the se_ImResize() was also added to Simba, under ResizeBitmapEx(), tho the bicubic interpolation was left out, as it very similar to my bilinear interpolation, only slower.
    The rest is just stuff I have needed in one or more projects, often used to OCR.

    Quote Originally Posted by Zyt3x View Post
    You probably already know this, but documentation of such huge plugins is what differs the great plugins from the exceptional ones and you'll see more use if you document it
    Hopefully I can come up with some documentation, but it will take me some time.
    Last edited by slacky; 12-23-2015 at 02:29 AM.
    !No priv. messages please

  10. #10
    Join Date
    May 2012
    Location
    Moscow, Russia
    Posts
    661
    Mentioned
    35 Post(s)
    Quoted
    102 Post(s)

    Default

    Nice work!
    Per aspera ad Astra!
    ----------------------------------------
    Slow and steady wins the race.

  11. #11
    Join Date
    Dec 2011
    Location
    East Coast, USA
    Posts
    4,231
    Mentioned
    112 Post(s)
    Quoted
    1869 Post(s)

    Default

    This is awesome <3
    GitLab projects | Simba 1.4 | Find me on IRC or Discord | ScapeRune scripts | Come play bot ScapeRune!

    <BenLand100> we're just in the transitional phase where society reclassifies guns as Bad™ before everyone gets laser pistols

  12. #12
    Join Date
    Feb 2012
    Location
    Norway
    Posts
    995
    Mentioned
    145 Post(s)
    Quoted
    596 Post(s)

    Default

    Have to mention that SimbaExt got some documentation online now!! Check it out at http://slackworld.net/docs/!

    Hopefully it can get a couple of uses
    Last edited by slacky; 11-26-2014 at 09:09 AM.
    !No priv. messages please

  13. #13
    Join Date
    Oct 2014
    Posts
    32
    Mentioned
    0 Post(s)
    Quoted
    23 Post(s)

    Default

    Giving this another bump, its awesome, I just started playing around with it

    are the docs going to be posted anywhere since the site is down?

  14. #14
    Join Date
    Feb 2007
    Location
    Alberta, Canada
    Posts
    4,615
    Mentioned
    50 Post(s)
    Quoted
    429 Post(s)

    Default

    Quote Originally Posted by Zef Style View Post
    Giving this another bump, its awesome, I just started playing around with it

    are the docs going to be posted anywhere since the site is down?
    Docs site seems to be working for me (link in Slacky's signature). Can confirm that this is awesome and has so many cool functions.

    Scripts: Edgeville Chop & Bank, GE Merchanting Aid
    Tutorials: How to Dominate the Grand Exchange

    Quote Originally Posted by YoHoJo View Post
    I like hentai.

  15. #15
    Join Date
    Oct 2014
    Posts
    32
    Mentioned
    0 Post(s)
    Quoted
    23 Post(s)

    Default

    Its been awhile and I am rusty, can someone tell me what these two issues are regarding?

    procedure TBoxArray.Append(const B:TBox); LINE 39 in Type_TBoxArray SimbaExt - Error: Duplicate declaration "Append"

    Result := Copy(Self); LINE 11 in Type_TBoxArray SimbaExt - Error: Too many parameters found


    commenting them out does allow for compile, but would like to know best way to fix..

    thanks

  16. #16
    Join Date
    Dec 2010
    Posts
    483
    Mentioned
    30 Post(s)
    Quoted
    328 Post(s)

    Default

    Quote Originally Posted by Zef Style View Post
    Its been awhile and I am rusty, can someone tell me what these two issues are regarding?

    procedure TBoxArray.Append(const B:TBox); LINE 39 in Type_TBoxArray SimbaExt - Error: Duplicate declaration "Append"

    Result := Copy(Self); LINE 11 in Type_TBoxArray SimbaExt - Error: Too many parameters found


    commenting them out does allow for compile, but would like to know best way to fix..

    thanks
    First error means TBoxArray.Append was already specified elsewhere.

    Second error means it can't find a version of Copy() that takes a parameter.

  17. #17
    Join Date
    Oct 2014
    Posts
    32
    Mentioned
    0 Post(s)
    Quoted
    23 Post(s)

    Default

    Quote Originally Posted by the bank View Post
    First error means TBoxArray.Append was already specified elsewhere.

    Second error means it can't find a version of Copy() that takes a parameter.
    Yeah just had to comment the Append function out(use SRL/Simba's) and change copy to: System.copy(self);

    All is well now

  18. #18
    Join Date
    Nov 2010
    Location
    Cleveland, Ohio, U.S.A.
    Posts
    69
    Mentioned
    0 Post(s)
    Quoted
    7 Post(s)

    Default

    Slacky, thank you for your contributions to the community.

    I went to https://github.com/slackydev/SimbaExt and read the README.md.

    I read:
    Code:
    <Sub-section>Download latest include
    
    http://slackworld.net/downloads/SimbaExt.rar
    I followed the link. The webpage says (for my browser):
    Code:
    Server not found
    
    Firefox can’t find the server at slackworld.net.
    First of all, I am puzzled as to why the include file pertaining to a GitHub repository would be stored on yet another website.

    Second of all, how can I obtain it?

    Additionally, if one types "slackworld" into the Search text field at the top of the GitHub webpage and clicks on the item in the list box that says "slackworld in this repository", one will see other source files that make reference to http://slackworld.net.

  19. #19
    Join Date
    Dec 2011
    Location
    East Coast, USA
    Posts
    4,231
    Mentioned
    112 Post(s)
    Quoted
    1869 Post(s)

    Default

    Quote Originally Posted by Alien Technology View Post
    Slacky, thank you for your contributions to the community.

    I went to https://github.com/slackydev/SimbaExt and read the README.md.

    I read:
    Code:
    <Sub-section>Download latest include
    
    http://slackworld.net/downloads/SimbaExt.rar
    I followed the link. The webpage says (for my browser):
    Code:
    Server not found
    
    Firefox can’t find the server at slackworld.net.
    First of all, I am puzzled as to why the include file pertaining to a GitHub repository would be stored on yet another website.

    Second of all, how can I obtain it?

    Additionally, if one types "slackworld" into the Search text field at the top of the GitHub webpage and clicks on the item in the list box that says "slackworld in this repository", one will see other source files that make reference to http://slackworld.net.
    slackworld.net was a website slacky hosted that has since gone down. No matter, as SimbaExt releases are still available on GitHub: https://github.com/slackydev/SimbaExt/releases/tag/0.25

    Edit: unfortunately the plugin's documentation seems to have also been hosted slackworld.net, unsure where to find it now.
    Last edited by KeepBotting; 07-26-2018 at 11:51 PM.
    GitLab projects | Simba 1.4 | Find me on IRC or Discord | ScapeRune scripts | Come play bot ScapeRune!

    <BenLand100> we're just in the transitional phase where society reclassifies guns as Bad™ before everyone gets laser pistols

  20. #20
    Join Date
    Feb 2012
    Location
    Norway
    Posts
    995
    Mentioned
    145 Post(s)
    Quoted
    596 Post(s)

    Default

    Unsure how well this gets along with Simba anymore, it hasn't been touched in nearly 4 years, so it would need a decent tuneup to live once more I suspect.
    If you are interested in individual functions within it, there is a good chance you can actually just copy portions of the source to Simba, and run it, but if it's one of them really complex functions, it could be too slow for real time processing in Lape (Simba).

    And yes, the server that hosted docs and whatnots is no longer.
    Last edited by slacky; 07-30-2018 at 12:02 AM.
    !No priv. messages please

Thread Information

Users Browsing this Thread

There are currently 1 users browsing this thread. (0 members and 1 guests)

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •