Noutați

Powerful Multi-sensor Imaging Tool For Processing And Analyzing Hyperspectral Images Built In Delphi

ImageLab is a native Windows-based multi-sensor imaging tool for processing and analyzing hyperspectral images built in Delphi. It targets research in science and technology where spectrally resolved images are utilized. According to the developer “ImageLab provides multi-sensor support for hyperspectral imaging. This enables researchers to extract information from spectrally resolved images which cannot be obtained otherwise. ImageLab supports a long list of spectroscopic methods (i.e. uvvis, infrared, Raman, energy dispersive xray, THz, mass spectroscopy, and more) and is used in a broad range of applications (e.g. detecting particles in air, scanning tissue for cancer cells, uncovering ultrafine cracks in steel and more). Despite the sheer size of the application (approx. 750,000 lines of Delphi code) this new and unique application has been developed within 5 years from scratch (thanks to RAD Studio and the SDL Component Suite).” Website http://www.imagelab.at/ Screenshot Gallery Reduce development time and get to market faster with RAD Studio, Delphi, or C++Builder. Design. Code. Compile. Deploy.Start Free Trial   Learn More About Upgrading

Read More

Why C++Builder? Check Out The Advantages Of A C++ Developer On Windows

C++ has consistently dominated “Top Programming Languages” lists worldwide this year. With such a strong demand, C++ developers are well-positioned to experience a good problem: too much work. You can join the presenter and C++Builder Product Manager, David Millington, to explore the features and functionality that set C++Builder apart by helping C++ developers worldwide build stunning apps faster. Additionally, get an exclusive sneak peek into the powerful updates coming soon to C++Builder. David Millington is a long-time C++ and Delphi developer. Originally from Australia, he now lives in far north Europe, a decision he loves every summer when he has 22 hours of daylight, before deciding he’s crazy every winter with 22 hours of night. Since joining Embarcadero in 2016, he has worked as the senior product manager for C++, the RAD Studio IDE and debugger. Embarcadero tools are built for elite developers who build and maintain the world’s most critical applications. Our customers choose Embarcadero because we are the champion of developers, and we help them build more secure and scalable enterprise applications faster than any other tools on the market. In fact, ninety of the Fortune 100 and an active community of more than three million users worldwide have relied on Embarcadero’s award-winning products for over 30 years. In the tutorial below you see in more details about the advantages of the C++ builder. Not using C++Builder yet? Head over and download the free trial of C++Builder today!

Read More

Quickly Learn To Assign Value Between Delphi And Python Using Python4Delphi Sample App

Earlier in the Python4Delphi Demo 3 post, we have learned how to create a Python Delphi Variable using the TPythonDelphiVar component, assign some value to it, and showed the value as a string. You can also use Python4Delphi with C++Builder. This post will see some advanced usage of the TPythonDelphiVar component. You can also use Python4Delphi with C++Builder. Python4Delphi Demo4 Sample App shows how to assign a variable value between Delphi and Python using the TPythonDelphiVar component events. This can be achieved by events that set and gets data as a variant or python object. Internally this component converts a value from Delphi to python and vice versa. You can find the Demo4 source on GitHub. Prerequisites: Download and install the latest Python for your platform. Follow the Python4Delphi installation instructions mentioned here. Alternatively, you can check out this video Getting started with Python4Delphi. Components used in Python4Delphi Demo4 Sample App: TPythonEngine: A collection of relatively low-level routines for communicating with Python, creating Python types in Delphi, etc. It’s a singleton class. TPythonGUIInputOutput: Inherited from TPythonInputOutput (which works as a console for python outputs) Using this component Output property you can associate the Memo component to show the Output. TPythonDelphiVar: Inherited from TEngineClient, used to convert the python variable to the Delphi variable and vice versa. It has methods to set and get value as variant or PyObject. It contains property like Module(TPythonModule internally created by default) where the python variable(TPyVar) is created and later converted to and from the Delphi variant or PyObject. TMemo: A multiline text editing control, providing text scrolling. The text in the memo control can be edited as a whole or line by line. You can find the Python4Delphi Demo4 sample project from the extracted repository ..Python4DelphiDemosDemo04.dproj. Open this project in RAD Studio 10.4.1 and run the application. Implementation Details: PythonEngine1 provides the connection to Python or rather the Python API. This project uses Python3.9 which can be seen in TPythonEngine DllName property. It Is assigned with InitScript which import sys module and prints the Python.Dll version, copyright information to Memo2. import sys print(“Python Dll: “, sys.version) print(sys.copyright) print() PythonGUIInputOutput1 provides a conduit for routing input and output between the Graphical User Interface (GUI) and the currentlyexecuting Python script. PythonDelphiVar1 component is intended for demonstrating how to assign value between Delphi(Edit1.Text)->Python Delphi variable(test.Value) and back from (test.Value) -> Edit1.Text using event PythonDelphiVar1GetData and PythonDelphiVar1SetData respectively. The data is passed as variant type here. procedure TForm1.PythonDelphiVar1GetData(Sender: TObject; var Data: Variant); begin Data := Edit1.Text; end; procedure TForm1.PythonDelphiVar1SetData(Sender: TObject; Data: Variant); begin Edit1.Text := Data; end; procedure TForm1.PythonDelphiVar1GetData(Sender: TObject;   var Data: Variant); begin   Data := Edit1.Text; end; procedure TForm1.PythonDelphiVar1SetData(Sender: TObject; Data: Variant); begin   Edit1.Text := Data; end; PythonDelphiVar2 component is intended for demonstrating how to get and set python objects using PythonDelphiVar2ExtGetData and PythonDelphiVar2ExtSetData events. A python object is created using the python script and assigned to PythonDelphiVar2 value. class C:   def __init__(Self, Arg):     Self.Arg = Arg   def __str__(Self):     return “

Read More

Powerful Native Open Source Hard Disk, Folder and Storage Analyzer Built In Delphi

Xinorbis is a very powerful hard disk, folder and storage analyzer available over on SourceForge. A good portion of it is open source and mainly written in Delphi. Other utilities included with it are written in C++ and C# which shows how easy it is into integrate Delphi and Object Pascal with other languages. According to the website “It uses a sophisticated mix of graphs, tables, and tree displays to give a complete, and unprecedented, picture of the contents of any hard disk, SSD, folder, removable or network drive. In fact, if your PC can see it, Xinorbis can scan it. Xinorbis makes it easy to see the contents, structure, file distribution, and file composition of any attached storage device. It includes fully customizable report generation in ASCII, CSV, HTML and XML.” As you can see it uses a Delphi style to implement a dark theme. Website https://sourceforge.net/projects/xinorbis-and-tools/ Screenshot Gallery

Read More

Quickly Build Powerful Python Modules In Delphi Using Python4Delphi Sample App

A Module is a file containing Python definitions and statements similar to the unit file in Delphi. To learn more about Python modules check this tutorial. How to create such Python Modules in Delphi using Python4Delphi components? This post will guide you. You can also use Python4Delphi with C++Builder. Python4Delphi Demo5 Sample App shows how to create a Module, add a routine to that module, Import the module in a python script, and access the added routine. You can find the Demo5 source on GitHub. Prerequisites: Download and install the latest Python for your platform. Follow the Python4Delphi installation instructions mentioned here. Alternatively, you can check out this video Getting started with Python4Delphi. Components used in Python4Delphi Demo5 App: TPythonEngine: A collection of relatively low-level routines for communicating with Python, creating Python types in Delphi, etc. It’s a singleton class. TPythonGUIInputOutput: Inherited from TPythonInputOutput (which works as a console for python outputs) Using this component Output property you can associate the Memo component to show the Output. TPythonModule: It’s inherited from TMethodsContainer class allows creating modules by providing a name. You can use routines AddMethod, AddMethodWithKW to add a method of type PyCFunction. You can create events using the Events property. TMemo: A multiline text editing control, providing text scrolling. The text in the memo control can be edited as a whole or line by line. You can find the Python4Delphi Demo5 sample project from the extracted GitHub repository ..Python4DelphiDemosDemo05.dproj. Open this project in RAD Studio 10.4.1 and run the application. Implementation Details: PythonEngine1 component provides the connection to Python or rather the Python API. This project uses Python3.9 which can be seen in TPythonEngine DllName property. It Is assigned with InitScript which import sys module and prints the Python.Dll version, copyright information to Memo2 using this InitScript. import sys print(“Python Dll: “, sys.version) print(sys.copyright) print() PythonGUIInputOutput1 component provides a conduit for routing input and output between the Graphical User Interface (GUI) and the currentlyexecuting Python script. PythonModule1 with Module name spam is created. During PythonModule1Initialization a method spam_foo is added to the Module. And the definition of the method is included in the same unit file. Logically a python module is created and its methods were created using this PythonModule. Later this can be imported into your python script wherever necessary. function spam_foo( self, args : PPyObject ) : PPyObject; cdecl; begin with GetPythonEngine do begin ShowMessage( ‘args of foo: ‘+PyObjectAsString(args) ); Result := ReturnNone; end; end; procedure TForm1.PythonModule1Initialization(Sender: TObject); begin with Sender as TPythonModule do begin AddMethod( ‘foo’, spam_foo, ‘foo’ ); end; end; function spam_foo( self, args : PPyObject ) : PPyObject; cdecl; begin   with GetPythonEngine do     begin       ShowMessage( ‘args of foo: ‘+PyObjectAsString(args) );       Result := ReturnNone;     end; end; procedure TForm1.PythonModule1Initialization(Sender: TObject); begin   with Sender as TPythonModule do     begin       AddMethod( ‘foo’, spam_foo, ‘foo’ );     end; end; Memo1, used for providing the Python Script which imports spam (PythonModule1), accesses the method spam.foo and the method shows the output. Buttons to perform the execution, load script from, and save the script to file. On Clicking Execute Script Button the script import spam print (spam.foo(‘hello world’, 1)) is executed. Python4Delphi Demo5 Check some of the tutorials available for Python4Delphi here

Read More

Learn How To Create A RAD Server With “David I” Intersimone In Delphi And C++

Embarcadero’s RAD Server provides a turn-key application foundation for rapidly building and deploying services-based applications using Delphi and C++Builder. RAD Server supports the REST (Representational State Transfer) protocol with JSON (or XML) parameter passing and return results. You can publish APIs, manage users and devices that are connected to the RAD Server, capture analytics about the use and users of applications, connect to local and enterprise databases using the FireDAC components and connect with Internet of Things (IoT) devices. RAD Server also supports user authentication, push notifications, geolocation, and data storage. Throughout the RAD Server documentation, source code, and in this technical paper, you’ll see references to EMS (Enterprise Mobility Services). EMS was the original name for the product, technologies, components and wizards that are now included the RAD Server product. With RAD Server’s wizards, components, and tools you can quickly develop new middleware and backend applications or migrate your existing Delphi and C++Builder client/server applications to a RAD Server based application to run on a server or in the cloud. You can publish your endpoints for REST calls from desktop, mobile, console, web and other types of applications. RAD Server comes with a full set of tools, components, database connectivity and interfaces that you will rely upon in building your service applications. RAD Server applications can be deployed on top of Microsoft Windows IIS and Apache web servers, and you can deploy your Delphi-based services to Linux Intel 64-bit servers. Download the full eBook and then check out the video below. Join RAD Studio expert “David I” and learn how to rapidly design, build, debug and deploy services-based solutions using RAD Studio and RAD Server. Want to learn more? Check out more information about RAD Server over on the Embarcadero site.

Read More

Easily Create Python Delphi Variables In Delphi Using Python4Delphi Sample App

As we know, a Variable stores a value so that you can reuse it later in your program. This reduces redundancy, improves performance, and makes your code more readable. What is Python Delphi Variable? This post will guide you to understand. You can also use Python4Delphi with C++Builder. Python4Delphi Demo3 Sample App shows how to create a Python Delphi Variable in Delphi using the TPythonDelphiVar component(convert the python variable to the Delphi variable and vice versa), shows the variable type and the value assigned to it, reassign different type value to the same variable, show the variable content in a message. You can find the Demo3 source on GitHub. Prerequisites: Download and install the latest Python for your platform. Follow the Python4Delphi installation instructions mentioned here. Alternatively, you can check out this video Getting started with Python4Delphi. Check Demo1 and Demo2 which covers how to run a python script and evaluate an expression in Delphi. Components used in Python4Delphi Demo3 Sample App: TPythonEngine: A collection of relatively low-level routines for communicating with Python, creating Python types in Delphi, etc. It’s a Singleton Class. TPythonGUIInputOutput: Inherited from TPythonInputOutput (which works as a console for python outputs) Using this component Output property you can associate the Memo component to show the Output. TPythonDelphiVar: Inherited from TEngineClient, used to convert the python variable to the Delphi variable and vice versa. It has methods to set and get value as variant or PyObject. It contains property like Module(TPythonModule internally created by default) where the python variable(TPyVar) is created and later converted to and from the Delphi variant. TMemo: A multiline text editing control, providing text scrolling. The text in the memo control can be edited as a whole or line by line. You can find the Python4Delphi Demo3 sample project from the extracted GitHub repository ..Python4DelphiDemosDemo03.dproj. Open this project in RAD Studio 10.4.1 and run the application. Implementation Details: PythonEngine1 provides the connection to Python or rather the Python API. This project uses Python3.9 which can be seen in TPythonEngine DllName property. It Is assigned with InitScript which import sys module and prints the Python.Dll version, copyright information to Memo2 using this InitScript. import sys print(“Python Dll: “, sys.version) print(sys.copyright) print() PythonGUIInputOutput1 component provides a conduit for routing input and output between the Graphical User Interface (GUI) and the currentlyexecuting Python script. In Python, variables need not be declared or defined in advance, as is the case in Delphi. To create a variable, you just assign it a value and then start using it. A variable may be assigned a value of one type and then later re-assigned a value of a different type. PythonDelphiVar1 created with the name ‘test’. This variable is used in the Memo1 default python script, which is assigned with the value 10, and print the value to the Memo2. Later the same variable is reassigned with value [1,2,3] and print the value. The script used is as follows, test.Value = 10 print(test, test.Value) test.Value = [1,2,3] print(test)Here the variable is created for Module ‘__main__’. Memo1 used for providing the Python Script and Memo2 for showing the output. Buttons to perform the execution, load script from, save the script to a file, show variable content to a message. On Clicking Execute Button the python script is executed using the below code. PythonEngine1.ExecStrings( Memo1.Lines ); PythonEngine1.ExecStrings( Memo1.Lines ); Load the custom script to the Memo1 from a […]

Read More

Easy-to-use Orbit Simulator Built In Delphi FireMonkey For Learning Gravitational Physics

Developer Tore Ottinsen had this to say about his app Orbit Xplorer “I am a retired high school physics teacher and a hobby Delphi programmer. This is my latest physics app, written in FMX for Windows. Hoping to do a Mac version soon.” It’s a good example of how accessible Delphi is as an IDE and Object Pascal as a programming language. According to the website “Orbit Xplorer is an easy-to-use orbit simulator suitable for high school, college and university students and teachers, or anyone with an interest in physics and astronomy. For the first time you can do “lab exercises” in gravitational physics! If you are solving problems involving orbits of satellites, planets or stars it will be exciting to simulate the problem in Orbit Xplorer and compare its numerical output with your own solutions.” Orbit Xplorer makes use of FireMonkey and a good number of FireMonkey styles. Website https://www.ottisoft.com/orbit_x.html Screenshot Gallery Reduce development time and get to market faster with RAD Studio, Delphi, or C++Builder. Design. Code. Compile. Deploy.Start Free Trial   Upgrade Today    Free Delphi Community Edition   Free C++Builder Community Edition

Read More

Quickly Build iOS And Android Apps From A Single Codebase With Delphi

Building mobile phone applications is swift and enjoyable with RAD Studio. Because when you start your FireMonkey project with Delphi or C++ Builder, you do not need to create several codebases for every platform. What you can do is just define platform based code with the IfDef Conditionals. Learn more about them in the DocWiki. In this one hour session, you can learn how to create iOS and Android applications with Delphi FireMonkey. Overview Cross-Platform Native Apps FireMonkey 3D Graphics Architecture Multi-Device Form Designer Several Demo Application in Action Development Speed – Prototyping Effects and Animations 3D Forms with FireMonkey Be sure to check out the whole session and learn about Delphi FireMonkey Multi-Device Mobile Development.

Read More

Easily Download And Install A Robust Syntax Highlighter For Delphi And C++ Builder From GetIt

SynEdit for Delphi and C++ Builder. This is a highly mature syntax highlighting edit control, not based on the Windows common controls and supported on Windows. Orwell Dev-C++, Embarcadero Dev-C++, and PyScripter IDEs all use TSynEdit. Once you install this SynEdit component package to your RAD Studio you start having lots of ideas to build amazing applications. Because with SynEdit you can solve many problems in your application by just dragging and dropping the component.  What you get from SynEdit VCL: Editor with syntax highlighters AutoCorrect and AutoComplete Non-Visual Components and many more non-visual components to utilize with SynEdit How can I get this SynEdit VCL? Run the RAD Studio Open the GetIt Package Manager from the Tools menu Search “synedit” and install the package Application Ideas to build with SynEdit components Code Editor – it can be a lightweight and simple editor with tens of different syntax highlighters Programming Educational Apps – since everyone learning from home using their computers, you can create a simple and effective coding platform for kids to code and learn. You can also check out the full source code over on GitHub: TurboPack SynEdit – GitHub Get an overview of the SynEdit VCL control in GetIt and then download it from GetIt in the IDE.

Read More