<html>
  <head>
    <meta content="text/html; charset=iso-8859-2"
      http-equiv="Content-Type">
  </head>
  <body bgcolor="#FFFFFF" text="#000000">
    <div class="moz-cite-prefix">OK, diky, takze zkusim prozkoumat
      OpenGL.<br>
      To vykreslovani radku po skupinach je jasne, tohle bylo jen pro
      test rychlosti.<br>
      Ja to mel udelane v C++ kdysi davno pro jednu aplikaci, pomaleji
      ale docela to stihalo pres bitmapy a winapi jeste v WinNT4. V to
      C# mi docela chybi nejaka funkce typu Move misto Copy primo nad
      bufferem...<br>
      <br>
      <br>
      Dne 19. 1. 2015 v 20:27 Galloth napsal(a):<br>
    </div>
    <blockquote
cite="mid:CAG5PC5d1xeNYBzho+fksWA6rXe=Voz36juHr9p04vEvS2bO4hw@mail.gmail.com"
      type="cite">
      <div dir="ltr">
        <div>OpenGL je otevřená alternativa k DirectX. Obojí umí jak 2D
          tak 3D. Snazit se udelat 1000radku/s je spatne, protoze
          monitor Vám stejně bude vykreslovat par desitek obrazků za
          sekundu. Grafické knihovny (jak OpenGL  tak DirectX) Vám
          umožní přístup do framebufferu, takže tam můžete řádky
          přidávat podle libosti a pak je naráz vykreslit. Doporučoval
          bych například vykreslovat po vložení každého 20 řádku (což
          bude dělat 50framů za sekundu) a tím se vyhnout posouvání
          bitmapy pro každý řádek (prostě vždy poskočí o 20 řádků).<br>
          <br>
        </div>
        Honza<br>
      </div>
      <div class="gmail_extra"><br>
        <div class="gmail_quote">Dne 19. ledna 2015 19:55 Jaroslav
          Buchta <span dir="ltr"><<a moz-do-not-send="true"
              href="mailto:jaroslav.buchta@hascomp.cz" target="_blank">jaroslav.buchta@hascomp.cz</a>></span>
          napsal(a):<br>
          <blockquote class="gmail_quote" style="margin:0 0 0
            .8ex;border-left:1px #ccc solid;padding-left:1ex">
            <div bgcolor="#FFFFFF" text="#000000">
              <div>No a to bych prave potreboval nakopnout, ktere
                knihony by se k tomu daly pouzit - zas to neni uplne
                stezejni a nerad bych se ucil neco na urovni
                programatora her.<br>
                Neco jsem nasel o DirectX, ale to je asi docela slozity
                moloch, nevim jestli OpenGL, ale to je spis 3D? Radsi se
                nejdriv zeptam nez budu vyslapavat slepe cesticky ;-)<br>
                <br>
                Dne 19. 1. 2015 v 19:51 Pavel Hudeček napsal(a):<br>
              </div>
              <blockquote type="cite">
                <div>
                  <div class="h5">Je potřeba použít hw akceleraci. Místo
                    kopírování celé bitmapy o řádek dál prostě jen říct
                    nějaké knihovní funkci, aby řekla grafice, že má
                    celý obsah okna posunout o řádek a pak tam
                    nakopírovat jen ten nový řádek. <br>
                    <br>
                    PH<br>
                    <br>
                    <p>Od: Jaroslav Buchta <a moz-do-not-send="true"
                        href="mailto:jaroslav.buchta@hascomp.cz"
                        target="_blank"><jaroslav.buchta@hascomp.cz></a><br>
                    </p>
                    <blockquote>Jakym smerem se vydat? Potrebuju v
                      podstate rychle posouvat radky v okne <br>
                      a pridavat nove radky, je to pro vizualizaci dat z
                      radkove kamery.<br>
                      Tak 1000 radku/s po 512 px by bylo ideal. Uvedeny
                      kod zvladne tak 40 <br>
                      (512x500 pixelu) takze to chce vice nez radove
                      zlepseni vykonu.<br>
                      <br>
                      Zatim jsem udelal tento hruby pokus a tudy cesta
                      asi nevede (da se to <br>
                      urcite jeste optimalizovat ale je to v principu
                      same kopirovani velkeho <br>
                      pole)<br>
                      <br>
                      Existuje nejaka lepsi metoda, jak rychle
                      periodicky zobrazovat v okne <br>
                      aktualni obraz ktery je jako pole pixelu? Ale zas
                      univerzalni, aby to <br>
                      nebylo vazane na nejakou konkretni graf. kartu,
                      cpu atp.<br>
                      <br>
                      private unsafe void
                      backgroundWorker1_DoWork(object sender, <br>
                      DoWorkEventArgs e)<br>
                      {<br>
                      <br>
                      while (!bwFin)<br>
                      {<br>
                      <br>
                      BitmapData bmd = bmp.LockBits(new Rectangle(0, 0,
                      <br>
                      bmp.Width, bmp.Height), ImageLockMode.WriteOnly,
                      bmp.PixelFormat);<br>
                      <br>
                      IntPtr ptr = bmd.Scan0;<br>
                      <br>
                      int lnBytes = Math.Abs(bmd.Stride);<br>
                      int bytes = lnBytes * bmp.Height;<br>
                      if (rgbValues == null)<br>
                      {<br>
                      rgbValues = new byte[bytes];<br>
                      <br>
                      }<br>
                      else<br>
                      {<br>
                      byte[] ba = rgbValues.Skip(lnBytes).ToArray();<br>
                      rgbValues = new byte[bytes];<br>
                      ba.CopyTo(rgbValues, 0);<br>
                      }<br>
                      <br>
                      for (int y = bmp.Height-1; y < bmp.Height; y++)<br>
                      {<br>
                      byte[] ln = new byte[bmp.Width * 4];<br>
                      for (int x = 0; x < bmp.Width; x++)<br>
                      {<br>
                      byte l = byte((x + y + bmOfs) % 256);<br>
                      ln[x * 4 + 0] = l;<br>
                      ln[x * 4 + 1] = l;<br>
                      ln[x * 4 + 2] = l;<br>
                      ln[x * 4 + 3] = 255;<br>
                      }<br>
                      ln.CopyTo(rgbValues, lnBytes * (bmp.Height - 1));<br>
                      }<br>
                      <br>
                      System.Runtime.InteropServices.Marshal.Copy(rgbValues,
                      0, ptr, <br>
                      bmp.Height * lnBytes);<br>
                      <br>
                      bmp.UnlockBits(bmd);<br>
                      <br>
                      bmOfs++;<br>
                      if (bmOfs > bmp.Height) bmOfs = 0;<br>
                      <br>
                      pictureBox1.Image = bmp.Clone() as Image;<br>
                      }<br>
                      pictureBox1.Image = null;<br>
                      }<br>
                    </blockquote>
                    <br>
                    <fieldset></fieldset>
                    <br>
                  </div>
                </div>
                <span class="">
                  <pre>_______________________________________________
HW-list mailing list  -  sponsored by <a moz-do-not-send="true" href="http://www.HW.cz" target="_blank">www.HW.cz</a>
<a moz-do-not-send="true" href="mailto:Hw-list@list.hw.cz" target="_blank">Hw-list@list.hw.cz</a>
<a moz-do-not-send="true" href="http://list.hw.cz/mailman/listinfo/hw-list" target="_blank">http://list.hw.cz/mailman/listinfo/hw-list</a>
</pre>
                </span></blockquote>
              <br>
              <br>
              <br>
              <hr
style="border:none;color:#909090;background-color:#b0b0b0;min-height:1px;width:99%">
              <table style="border-collapse:collapse;border:none">
                <tbody>
                  <tr>
                    <td style="border:none;padding:0px 15px 0px 8px"> <a
                        moz-do-not-send="true"
                        href="http://www.avast.com/" target="_blank"> <img
                          moz-do-not-send="true"
                          src="http://static.avast.com/emails/avast-mail-stamp.png"
                          border="0"> </a> </td>
                    <td>
                      <p
style="color:#3d4d5a;font-family:"Calibri","Verdana","Arial","Helvetica";font-size:12pt"><span
                          class=""> This email has been checked for
                          viruses by Avast antivirus software. <br>
                        </span><a moz-do-not-send="true"
                          href="http://www.avast.com/" target="_blank">www.avast.com</a>
                      </p>
                    </td>
                  </tr>
                </tbody>
              </table>
              <br>
            </div>
            <br>
            _______________________________________________<br>
            HW-list mailing list  -  sponsored by <a
              moz-do-not-send="true" href="http://www.HW.cz"
              target="_blank">www.HW.cz</a><br>
            <a moz-do-not-send="true" href="mailto:Hw-list@list.hw.cz">Hw-list@list.hw.cz</a><br>
            <a moz-do-not-send="true"
              href="http://list.hw.cz/mailman/listinfo/hw-list"
              target="_blank">http://list.hw.cz/mailman/listinfo/hw-list</a><br>
            <br>
          </blockquote>
        </div>
        <br>
      </div>
      <br>
      <fieldset class="mimeAttachmentHeader"></fieldset>
      <br>
      <pre wrap="">_______________________________________________
HW-list mailing list  -  sponsored by <a class="moz-txt-link-abbreviated" href="http://www.HW.cz">www.HW.cz</a>
<a class="moz-txt-link-abbreviated" href="mailto:Hw-list@list.hw.cz">Hw-list@list.hw.cz</a>
<a class="moz-txt-link-freetext" href="http://list.hw.cz/mailman/listinfo/hw-list">http://list.hw.cz/mailman/listinfo/hw-list</a>
</pre>
    </blockquote>
    <br>
  
<br /><br />
<hr style='border:none; color:#909090; background-color:#B0B0B0; height: 1px; width: 99%;' />
<table style='border-collapse:collapse;border:none;'>
        <tr>
                <td style='border:none;padding:0px 15px 0px 8px'>
                        <a href="http://www.avast.com/">
                                <img border=0 src="http://static.avast.com/emails/avast-mail-stamp.png" />
                        </a>
                </td>
                <td>
                        <p style='color:#3d4d5a; font-family:"Calibri","Verdana","Arial","Helvetica"; font-size:12pt;'>
                                This email has been checked for viruses by Avast antivirus software.
                                <br><a href="http://www.avast.com/">www.avast.com</a>
                        </p>
                </td>
        </tr>
</table>
<br />
</body>
</html>