Announcement

Collapse
No announcement yet.

Jon00 Image Builder for Homeseer 3

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • Jon00 Image Builder for Homeseer 3

    This package allows you to easily generate images on the fly by means of simple entries in an ini file. This can then be used in any application or hardware where images can be displayed.

    The image builder has the following features:

    » Generate an image of any size in formats including JPG, GIF, PNG, WMF etc.
    » Draw lines of any pen size and colour with optional transparency.
    » Draw squares/rectangles of any defined size/colour with optional transparency.
    » Fill squares/rectangles of any defined size/colour or transition colours with optional transparency.
    » Draw circles/ellipses of any defined size/colour with optional transparency.
    » Fill circles/ellipses of any defined size/colour with optional transparency.
    » Draw polygons (max 12 points) of any defined size/colour with optional transparency.
    » Fill polygons (max 12 points) of any defined size/colour with optional transparency.
    » Draw curves (max 12 points) and Beziers of any defined size/colour with optional transparency.
    » Insert existing images with optional overall opacity, individual colour transparency (background removal) , resize, rotate & flip.
    » Insert text of any size & colour with optional rotation, transparency, font face, bold, italic, underline or strikethrough.
    » Insert dynamic information from Homeseer (devicestring, time, date etc) by use of replacement tags.
    » Draw/Fill simple bar charts with definable scale, bar colour, text and transparency.
    » Draw/fill simple pie charts with definable slice size/colour and transparency.

    Applications include:

    » Manipulation and combination of existing images on to a single new image.
    » Dynamic update of Images in Homeseer and other web pages.
    » Floor plan/layout of your house superposed with icons depicting the current status of devices.
    » Dynamic update of Images on hardware such as a wireless picture frame used as an information centre.
    » Forum signature banner and/or avatar image generation.
    » Adding time, date, watermarking and other information to existing images.
    » Creation of simple charts.
    Attached Files
    Last edited by jon00; November 23rd, 2018, 12:46 PM.
    Jon


  • #2
    Thanks Jon.

    Looking forward to giving Image Builder a spin on Homeseer 3.

    Using Image Builder for Homeseer 2 now; well years now and running fine.
    Attached Files
    - Pete

    Auto mator
    Homeseer 3 Pro - 3.0.0.534 (Linux) - Ubuntu 18.04/W7e 64 bit Intel Haswell CPU - Mono 6.4X
    Homeseer Zee2 (Lite) - 3.0.0.534 (Linux) - Ubuntu 18.04/W7e - CherryTrail x5-Z8350 BeeLink 4Gb BT3 Pro - Mono 6.4X

    X10, UPB, Zigbee, ZWave and Wifi MQTT automation.

    Comment


    • #3
      Hi Jon,

      Trying to use Image Builder for HS3 but when I run the script, my HS log displays a load of errors. The first few are below:-

      Mar-27 08:25:55 Error Compiling script Jon00ImageBuilderHS3.vben: Type 'Graphics' is not defined.
      Mar-27 08:25:55 Error Compiling script Jon00ImageBuilderHS3.vben: Type 'Bitmap' is not defined.
      Mar-27 08:25:55 Error Compiling script Jon00ImageBuilderHS3.vben: Namespace or type specified in the Imports 'System.Drawing.Drawing2D' doesn't contain any public member or cannot be found. Make sure the namespace or the type is defined and contains at least one public member. Make sure the imported element name doesn't use any aliases.
      Mar-27 08:25:55 Error Compiling script Jon00ImageBuilderHS3.vben: Namespace or type specified in the Imports 'System.Drawing.Imaging' doesn't contain any public member or cannot be found. Make sure the namespace or the type is defined and contains at least one public member. Make sure the imported element name doesn't use any aliases.
      Mar-27 08:25:55 Error Compiling script Jon00ImageBuilderHS3.vben: Namespace or type specified in the Imports 'System.Core' doesn't contain any public member or cannot be found. Make sure the namespace or the type is defined and contains at least one public member. Make sure the imported element name doesn't use any aliases

      It looks as though I am missing a reference or link somewhere - can you enlighten me?

      Thanks in advance,

      Jon.

      Comment


      • #4
        Hi Jon,

        Did you read the section in the docs about adding the drawings reference to the ScriptingReferences= entry within Settings.ini?
        Jon

        Comment


        • #5
          Hi Jon,

          Does that exist in the HS3 version's documentation? I remember doing that for HS2, but didn't think it would necessarily apply to HS3 with .NET4

          I just had another look through the .pdf in the docs folder and couldn't see a reference to settings.ini.

          Cheers,

          Jon.

          Comment


          • #6
            Apologies then. I'm at work and assumed I had added this to the docs.

            It does not matter on the version of .NET being used, they still need referencing.

            You will need to add this to the end of your ScriptingReferences entry:

            ,System.Drawing;System.Drawing.dll

            If you have no other entries it would just be:

            ScriptingReferences=System.Drawing;System.Drawing.dll
            Jon

            Comment


            • #7
              Thanks Jon, adding the references worked.

              I re-wrote a lot of my scripts as plugins when I moved over to HS3 so I could track what functions were putting a strain on my system (SNMP polls of missing devices was a particularly nasty one!) so I never had cause to add scripting references into HS3 and forgot they were even there!

              Cheers,

              Jon.

              Comment


              • #8
                Dynamic images in device string

                Hey all - I know this is an old thread.

                I see that WeatherXML somehow gets an image into its device string, and this can be shown to HSTouch clients.

                How could I do that with an image built and refreshed using the image builder utility?

                I imagine the flow to work this way:
                1. I run a script every x minutes,which causes image builder to rebuild a set of images
                2. I have a set of devices (specifically for HSTouch) which use these images as their deviceString
                3. When the images are updated, they update on HSTouch clients.

                (BTW, I mean HS3Touch etc - using HS3 here).

                Thanks

                Comment

                Working...
                X