AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

GLScene und DXF

Ein Thema von Alter Mann · begonnen am 16. Aug 2021 · letzter Beitrag vom 16. Aug 2021
Antwort Antwort
Alter Mann

Registriert seit: 15. Nov 2003
Ort: Berlin
934 Beiträge
 
Delphi 10.2 Tokyo Professional
 
#1

GLScene und DXF

  Alt 16. Aug 2021, 19:03
Hallo,

da ich für eine kleine Anwendung zur Anzeige 3D benötige, habe ich mir mal GLSceneViewer-Demo und
ein paar Youtube-Videos angeguckt. Leider schaffe ich es nicht vorliegende DXF-Dateien zur Anzeige zu
bringen, da immer eine Exception(siehe gekürzter Anhang) ausgelöst wird.
Zum Anzeigen die TXT-Datei in DXF umbennen.

Als Ursache haben ich folgende Stelle in der GLS.FileDXF - Unit ausgemacht:
Delphi-Quellcode:
...
  TGLDXFVectorFile = class(TGLVectorFile)
  private
    FSourceStream: TStream; { Load from this stream }
    FBuffer: String; { Buffer and current line }
...
  function TGLDXFVectorFile.ReadLine: STRING;
  var
    j: Integer;
    FLine: STRING;
    NewlineChar: CHAR;


    procedure FillBuffer;
    var
      l: Integer;
    begin
      l := FSourceStream.Size - FSourceStream.Position;
      if l > BufSize then
        l := BufSize;
      SetLength(FBuffer, l);
      FSourceStream.Read(FBuffer[1], l); [COLOR="Lime"]// <-- Hier[/COLOR]
      FBufPos := 1;
    end;
...
Könnt Ihr in besagter Demo (falls vorhanden) eines der möglichen 3D-Formate anzeigen?
Deuten die Schriftzeichen in der Exception daraufhin, dass GLScene nicht Unicode fähig ist oder
hat das andere Gründe?

Danke

PS Hier gibt es keine Exception
Delphi-Quellcode:
..
  procedure FillBuffer;
  var
    l: Integer;
    Data : TBytes;
  begin
    l := FSourceStream.Size - FSourceStream.Position;
    if l > BufSize then l := BufSize;
    SetLength(Data, l);
    FSourceStream.ReadBuffer(Pointer(Data)^, l);
    FBuffer := TEncoding.Default.GetString(Data);
    FBufPos := 1;
  end;
...
Miniaturansicht angehängter Grafiken
exception.png  
Angehängte Dateien
Dateityp: txt GND.txt (45,3 KB, 9x aufgerufen)
  Mit Zitat antworten Zitat
Benutzerbild von Uwe Raabe
Uwe Raabe
Online

Registriert seit: 20. Jan 2006
Ort: Lübbecke
11.006 Beiträge
 
Delphi 12 Athens
 
#2

AW: GLScene und DXF

  Alt 16. Aug 2021, 19:21
dass GLScene nicht Unicode fähig ist
Das ist zumindest an dieser Stelle in der Tat so. Der Code geht implizit von 1-Byte Strings aus.
Uwe Raabe
Certified Delphi Master Developer
Embarcadero MVP
Blog: The Art of Delphi Programming
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 16:24 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz