GNA.T4DAPI
1.0.4
dotnet add package GNA.T4DAPI --version 1.0.4
NuGet\Install-Package GNA.T4DAPI -Version 1.0.4
<PackageReference Include="GNA.T4DAPI" Version="1.0.4" />
<PackageVersion Include="GNA.T4DAPI" Version="1.0.4" />
<PackageReference Include="GNA.T4DAPI" />
paket add GNA.T4DAPI --version 1.0.4
#r "nuget: GNA.T4DAPI, 1.0.4"
#:package GNA.T4DAPI@1.0.4
#addin nuget:?package=GNA.T4DAPI&version=1.0.4
#tool nuget:?package=GNA.T4DAPI&version=1.0.4
T4D API Coordinate Extraction Library
This C# library enables structured extraction and processing of coordinate data from the Trimble 4D Control (T4D) monitoring system database. It supports high-performance retrieval of absolute and filtered coordinate data in various formats, including block-based averaging and latest record selection.
📦 Implementation
To begin using the library:
Obtain a License Code
- Contact
gna.geomatics@gmail.comto obtain a license key. - The license will be issued in the format:
Dm4eGwoTaG5qb2lr
- Contact
Install via NuGet
- In Visual Studio, navigate to:
Manage NuGet Packages → Search →GNA.T4DAPI - Select and install the package.
- In Visual Studio, navigate to:
Add Namespace in Code
using T4Dlibrary;Initialize and Apply License
T4Dapi t4dapi = new(); t4dapi.SetCommercial(Dm4eGwoTaG5qb2lr);
📥 Input Parameters (Common Across Methods)
| Parameter | Description |
|---|---|
T4D |
Trimble 4D Control software |
T4DDBMonitoring |
Monitoring database from which data is extracted |
dbConnection |
SQL connection string to the monitoring database |
projectTitle |
Title of the project in T4D Web (used to identify points) |
pointName |
Name of the individual point to filter for single-point methods |
timeBlockStartUTC |
Start time (UTC) of data range (format: YYYY-MM-DD HH:mm:ss) |
timeBlockEndUTC |
End time (UTC) of data range (format: YYYY-MM-DD HH:mm:ss) |
iTimeIntervalHours |
Time sub-block interval in hours (1, 2, 3, etc) |
📤 Output Results
All methods return:
List<Points>
Each Points object contains fields such as:
SensorID,NameE,N,HUTCtime,TimeBlockStartUTC,TimeBlockEndUTCMeanE,MeanN,MeanH(for mean calculations)
🔍 Example Usage
using T4Dlibrary;
T4Dapi t4dapi = new();
t4dapi.SetCommercial(Dm4eGwoTaG5qb2lr);
List<Points> coordinateList = new();
coordinateList = t4dapi.GetAllPointsAllCoordinates(dbConnection, projectTitle, timeBlockStartUTC, timeBlockEndUTC);
foreach (var point in coordinateList)
{
Console.WriteLine($"{point.Name}\t{point.E:0.0000}\t{point.N:0.0000}\t{point.H:0.0000}\t{point.UTCtime}");
}
Example Output:
S01 252649.2824 6139745.7819 27.9158 2025-03-10 01:33:36
S01 252649.2817 6139745.7825 27.9147 2025-03-10 01:43:30
S01 252649.2822 6139745.7820 27.9129 2025-03-10 01:53:27
S02 252636.6419 6139739.2728 26.6793 2025-03-10 00:03:41
S02 252636.6425 6139739.2730 26.6804 2025-03-10 00:13:43
S02 252636.6407 6139739.2737 26.6809 2025-03-10 00:23:38
📚 Available Methods
| Method | Description |
|---|---|
TestDBConnection(strDBconnection) |
Tests the database connection to ensure the connection string is valid |
GetAllPointsAllCoordinates(dbConnection, projectTitle, timeBlockStartUTC, timeBlockEndUTC) |
All coordinates for all points within a time block |
GetSinglePointAllCoordinates(dbConnection, projectTitle, pointName, timeBlockStartUTC, timeBlockEndUTC) |
All coordinates for a single point within a time block |
GetAllPointsLatestCoordinates(dbConnection, projectTitle) |
Latest coordinate for each point (no time filtering) |
GetAllPointsLatestCoordinates(dbConnection, projectTitle, timeBlockStartUTC, timeBlockEndUTC) |
Latest coordinate for each point within a time block |
GetAllPointsLatestCoordinates(dbConnection, projectTitle, timeBlockStartUTC, timeBlockEndUTC, iTimeIntervalHours) |
Latest coordinate per point within each time sub-block |
GetAllPointsMeanCoordinates(dbConnection, projectTitle, timeBlockStartUTC, timeBlockEndUTC, iTimeIntervalHours) |
Filtered mean coordinate per point for each time sub-block |
GetSinglePointMeanCoordinates(dbConnection, projectTitle, pointName, timeBlockStartUTC, timeBlockEndUTC, iTimeIntervalHours) |
Mean coordinate of a single point for each time sub-block |
GetSinglePointLatestCoordinates(dbConnection, projectTitle, pointName) |
Latest coordinate for a single point |
📬 Contact
Julian Gray
🌐 Website: www.gnageomatics.com
✉️ Email: gna.geomatics@gmail.com
📞 Mobile: +49 176 7299 7904
| Product | Versions Compatible and additional computed target framework versions. |
|---|---|
| .NET | net5.0 was computed. net5.0-windows was computed. net6.0 was computed. net6.0-android was computed. net6.0-ios was computed. net6.0-maccatalyst was computed. net6.0-macos was computed. net6.0-tvos was computed. net6.0-windows was computed. net7.0 was computed. net7.0-android was computed. net7.0-ios was computed. net7.0-maccatalyst was computed. net7.0-macos was computed. net7.0-tvos was computed. net7.0-windows was computed. net8.0 was computed. net8.0-android was computed. net8.0-browser was computed. net8.0-ios was computed. net8.0-maccatalyst was computed. net8.0-macos was computed. net8.0-tvos was computed. net8.0-windows was computed. net9.0 was computed. net9.0-android was computed. net9.0-browser was computed. net9.0-ios was computed. net9.0-maccatalyst was computed. net9.0-macos was computed. net9.0-tvos was computed. net9.0-windows was computed. net10.0 was computed. net10.0-android was computed. net10.0-browser was computed. net10.0-ios was computed. net10.0-maccatalyst was computed. net10.0-macos was computed. net10.0-tvos was computed. net10.0-windows was computed. |
| .NET Core | netcoreapp2.0 was computed. netcoreapp2.1 was computed. netcoreapp2.2 was computed. netcoreapp3.0 was computed. netcoreapp3.1 was computed. |
| .NET Standard | netstandard2.0 is compatible. netstandard2.1 was computed. |
| .NET Framework | net461 was computed. net462 was computed. net463 was computed. net47 was computed. net471 was computed. net472 was computed. net48 was computed. net481 was computed. |
| MonoAndroid | monoandroid was computed. |
| MonoMac | monomac was computed. |
| MonoTouch | monotouch was computed. |
| Tizen | tizen40 was computed. tizen60 was computed. |
| Xamarin.iOS | xamarinios was computed. |
| Xamarin.Mac | xamarinmac was computed. |
| Xamarin.TVOS | xamarintvos was computed. |
| Xamarin.WatchOS | xamarinwatchos was computed. |
-
.NETStandard 2.0
- No dependencies.
NuGet packages
This package is not used by any NuGet packages.
GitHub repositories
This package is not used by any popular GitHub repositories.