public void CreateColorRamp(int nStartIndex, ColorEntry startcolor, int nEndIndex, ColorEntry endcolor) { GdalPINVOKE.ColorTable_CreateColorRamp(swigCPtr, nStartIndex, ColorEntry.getCPtr(startcolor), nEndIndex, ColorEntry.getCPtr(endcolor)); if (GdalPINVOKE.SWIGPendingException.Pending) { throw GdalPINVOKE.SWIGPendingException.Retrieve(); } }
public void SetColorEntry(int entry, ColorEntry centry) { GdalPINVOKE.ColorTable_SetColorEntry(swigCPtr, entry, ColorEntry.getCPtr(centry)); if (GdalPINVOKE.SWIGPendingException.Pending) { throw GdalPINVOKE.SWIGPendingException.Retrieve(); } }
public int GetColorEntryAsRGB(int entry, ColorEntry centry) { int ret = GdalPINVOKE.ColorTable_GetColorEntryAsRGB(swigCPtr, entry, ColorEntry.getCPtr(centry)); if (GdalPINVOKE.SWIGPendingException.Pending) { throw GdalPINVOKE.SWIGPendingException.Retrieve(); } return(ret); }
public ColorEntry GetColorEntry(int entry) { IntPtr cPtr = GdalPINVOKE.ColorTable_GetColorEntry(swigCPtr, entry); ColorEntry ret = (cPtr == IntPtr.Zero) ? null : new ColorEntry(cPtr, false, ThisOwn_false()); if (GdalPINVOKE.SWIGPendingException.Pending) { throw GdalPINVOKE.SWIGPendingException.Retrieve(); } return(ret); }
public static HandleRef getCPtrAndSetReference(ColorEntry obj, object parent) { if (obj != null) { obj.swigParentRef = parent; return obj.swigCPtr; } else { return new HandleRef(null, IntPtr.Zero); } }
public static HandleRef getCPtrAndSetReference(ColorEntry obj, object parent) { if (obj != null) { obj.swigParentRef = parent; return(obj.swigCPtr); } else { return(new HandleRef(null, IntPtr.Zero)); } }
public static HandleRef getCPtrAndDisown(ColorEntry obj, object parent) { if (obj != null) { obj.swigCMemOwn = false; obj.swigParentRef = parent; return obj.swigCPtr; } else { return new HandleRef(null, IntPtr.Zero); } }
public static HandleRef getCPtrAndDisown(ColorEntry obj, object parent) { if (obj != null) { obj.swigCMemOwn = false; obj.swigParentRef = parent; return(obj.swigCPtr); } else { return(new HandleRef(null, IntPtr.Zero)); } }
public static HandleRef getCPtr(ColorEntry obj) { return((obj == null) ? new HandleRef(null, IntPtr.Zero) : obj.swigCPtr); }
/// <summary> /// This should update the palette cached and in the file. /// </summary> /// <param name="value"></param> public override void SetColorPalette(IEnumerable<Color> value) { ColorPalette = value; _dataset = Gdal.Open(Filename, Access.GA_Update); ColorTable ct = new ColorTable(PaletteInterp.GPI_RGB); int index = 0; foreach (Color c in value) { ColorEntry ce = new ColorEntry(); ce.c4 = c.A; ce.c3 = c.B; ce.c2 = c.G; ce.c1 = c.R; ct.SetColorEntry(index, ce); index++; } using (Band first = _dataset.GetRasterBand(1)) { first.SetRasterColorTable(ct); } }
public void CreateColorRamp(int nStartIndex, ColorEntry startcolor, int nEndIndex, ColorEntry endcolor) { GdalPINVOKE.ColorTable_CreateColorRamp(swigCPtr, nStartIndex, ColorEntry.getCPtr(startcolor), nEndIndex, ColorEntry.getCPtr(endcolor)); if (GdalPINVOKE.SWIGPendingException.Pending) throw GdalPINVOKE.SWIGPendingException.Retrieve(); }
public void SetColorEntry(int entry, ColorEntry centry) { GdalPINVOKE.ColorTable_SetColorEntry(swigCPtr, entry, ColorEntry.getCPtr(centry)); if (GdalPINVOKE.SWIGPendingException.Pending) throw GdalPINVOKE.SWIGPendingException.Retrieve(); }
public int GetColorEntryAsRGB(int entry, ColorEntry centry) { int ret = GdalPINVOKE.ColorTable_GetColorEntryAsRGB(swigCPtr, entry, ColorEntry.getCPtr(centry)); if (GdalPINVOKE.SWIGPendingException.Pending) throw GdalPINVOKE.SWIGPendingException.Retrieve(); return ret; }
public static HandleRef getCPtr(ColorEntry obj) { return (obj == null) ? new HandleRef(null, IntPtr.Zero) : obj.swigCPtr; }
public static void Main(string[] args) { if (args.Length != 2) usage(); string file = args[0]; string file_out = args[1]; try { /* -------------------------------------------------------------------- */ /* Register driver(s). */ /* -------------------------------------------------------------------- */ Gdal.AllRegister(); Driver dv = null; Dataset ds = null, ds_out = null; Band ba = null, ba_out = null; ColorTable ct = null, ct_out = null; byte [] buffer; /* -------------------------------------------------------------------- */ /* Open dataset. */ /* -------------------------------------------------------------------- */ ds = Gdal.Open(file, Access.GA_ReadOnly); ba = ds.GetRasterBand(1); ct = ba.GetRasterColorTable(); if( ct != null ) Console.WriteLine( "Band has a color table with " + ct.GetCount() + " entries."); else { Console.WriteLine( "Data source has no color table"); return; } buffer = new byte [ds.RasterXSize * ds.RasterYSize]; ba.ReadRaster(0, 0, ds.RasterXSize, ds.RasterYSize, buffer, ds.RasterXSize, ds.RasterYSize, 0, 0); /* -------------------------------------------------------------------- */ /* Get driver */ /* -------------------------------------------------------------------- */ dv = Gdal.GetDriverByName("GTiff"); ds_out = dv.Create(file_out, ds.RasterXSize, ds.RasterYSize, ds.RasterCount, ba.DataType, new string [] {}); ba_out = ds_out.GetRasterBand(1); ct_out = new ColorTable(PaletteInterp.GPI_RGB); ba_out.WriteRaster(0, 0, ds.RasterXSize, ds.RasterYSize, buffer, ds.RasterXSize, ds.RasterYSize, 0, 0); /* -------------------------------------------------------------------- */ /* Copying the colortable */ /* -------------------------------------------------------------------- */ for (int i = 0; i < ct.GetCount(); i++) { ColorEntry ce = null, ce_out = null; ce = ct.GetColorEntry(i); ce_out = new ColorEntry(); ce_out.c1 = ce.c1; ce_out.c2 = ce.c2; ce_out.c3 = ce.c3; ce_out.c4 = ce.c4; ct_out.SetColorEntry(i, ce_out); ce.Dispose(); ce_out.Dispose(); } ba_out.SetRasterColorTable(ct_out); } catch (Exception e) { Console.WriteLine("Application error: " + e.Message); } }